我知道覆盖测试的理论,但是在现实中,CC工具是如何进行覆盖测量的?我的意思是,它是否检查每个方法是否都有一个单元测试来测试它?在单元测试中,行覆盖率是否涉及到某种程度?我所能找到的只是覆盖率标准等等,但我只是不明白这些工具(例如Sonar)是如何实际测量单元测试覆盖率的。
发布于 2015-01-13 10:20:47
覆盖率是在自动测试运行时执行多少行/块/弧代码的度量。
代码覆盖的基本思想很简单。在产品开发过程中,会创建大量的测试用例,并运行这些测试用例来查找系统中的bug。代码覆盖率分析监视产品代码的哪些部分通过测试用例的集合来执行。如果产品代码的某些部分在测试期间从未运行,那么产品还没有经过彻底的测试。
因此,如果您有90%的代码覆盖率超过了这意味着有10%的代码没有涵盖在测试中。我知道您可能认为90%的代码已经涵盖,但是您必须从不同的角度来看。是什么阻止你获得100%的代码覆盖率?请记住,拥有"100%的代码覆盖率“并不意味着所有的代码都会被测试--虽然这意味着每一行代码都会被测试,但这并不意味着它们在每个可能的场景下都会被测试。
使用Sonar,您可以监视应用程序的总体覆盖率,并根据需要发送百分比度量。要通过项目上的集成测试获得代码覆盖率,只需遵循以下5个步骤:
https://stackoverflow.com/questions/27919475
复制相似问题