相关文章

软件测试培训中单元测试的代码覆盖率统计(广州中软卓越)

来源网址:http://www.gsdkpx.com/

单元测试的代码覆盖率统计,是衡量测试用例好坏的一个的方法,有的公司直接把代码测试覆盖率作为一个硬性要求。尤其在多人合作的情况下。很有可能在后期维护时候牵一发而动全身的代码修改中起到至关重要的检测。不过代码覆盖率也不是唯一标准,测试用例的好坏主要还是看能不能覆盖尽可能多的情况。

打包编译JS代码覆盖率问题

之前代码覆盖率在JS代码不需要编译的情况下。直接可以使用KARMA的karma-coverage这个工具就可以直接统计结果。不过由于我的项目用上了WEBPACK的打包和babel的ES6编译。所以单单使用karma-coverage统计的代码覆盖率统计的是,编译打包后的代码,这个覆盖率直接没有了参考价值。一般打包后代码的覆盖率只有可怜的10%-20%因为WEBPACK帮你加入了很多它的代码。而测试要做到这些代码的覆盖是完全没有意义的。所以就需要找一个可以查看编译前代码覆盖率的一个方法。

单元测试覆盖率

做测试时,想要知代码覆盖道是否所有代码都测试到了。这就是所谓的率。

单元测试覆盖率有四个测量维度:

行覆盖率(line coverage):是否每一行都执行

函数覆盖率(function coverage):是否每个函数都调用

分支覆盖率(branch coverage):是否每个if代码块都执行

语句覆盖率(statement coverage):是否每个语句都执行

常用的前端js测试覆盖率框架: istanbul

我们代码使用ES6来编写的,使用babel来转码,所以选择了另一个专门针对es6的babel转码工具 isparta