unit单元测试和e2e端到端测试的区别

前端实现自动化就要借助到unit和e2e端到端测试了

一.unit测试

站在程序员的角度测试
unit测试是把代码看成是一个个的组件。从而实现每一个组件的单独测试,测试内容主要是组件内每一个函数的返回结果是不是和期望值一样。
例如:

const compare = (a,b) => a>b?a:b
对这个函数进行测试
expect(compare(1,2)).to.equal(2) //ok
expect(compare(2,1)).to.equal(1) //ok
测试完成

而代码覆盖率是指代码中每一个函数的每一中情况的测试情况,上述测试的代码覆盖率是100%

const compare = (a,b) => a>b?a:b
对这个函数进行测试
expect(compare(2,1)).to.equal(1) //ok
测试完成

这样代码覆盖率是50%,因为else情况没有测试到

二.e2e测试

站在用户角度的测试
e2e测试是把我们的程序堪称是一个黑盒子,我不懂你内部是怎么实现的,我只负责打开浏览器,把测试内容在页面上输入一遍,看是不是我想要得到的结果。

两者的存在都是很有意义的。
unit测试是程序员写好自己的逻辑后可以很容易的测试自己的逻辑返回的是不是都正确。
e2e代码是测试所有的需求是不是都可以正确的完成,而且最终要的是在代码重构,js改动很多之后,需要对需求进行测试的时候测试代码是不需要改变的,你也不用担心在重构后不能达到客户的需求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,161评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,460评论 25 709
  • 单元测试不是一个小工程,需要多用些时间才能做好,不要希望通过这个文章就能掌握单元测试,这只是一个入门,需要自己动手...
    勇不言弃92阅读 12,422评论 9 60
  • Fish—a friendly interactive shell fish刚出来时我就被它强大的命令参数补全和颜...
    刀尖红叶阅读 5,333评论 0 0

友情链接更多精彩内容