支持JUnit测试注释的代码覆盖率工具指定UnitTest覆盖的方法

时间:2012-12-16 13:07:10

标签: java junit code-coverage metrics

我正在寻找像PHPUnit的“Specifying Covered Methods”这样的东西。这意味着代码覆盖工具附带了我的JUnit测试的注释,以便我可以指定哪个方法通过哪个JUnit测试进行测试。

这样做的效果将是覆盖线上更正确的指标,因为只计算指定方法的行,而不是整个应用程序的所有执行行。

1 个答案:

答案 0 :(得分:2)

这种方法听起来好像会给程序员带来沉重的负担。它要么假定测试和方法之间存在1:1的对应关系(这违背了通常的建议来考虑测试类的行为,而不是方法)或要求程序员通过私有方法等手动跟踪路由。每个入口点,因为代码被重构并随着时间的推移而改变。

很难看出如何通过类型安全来实现这一点 - 快速自动化操作(如方法重命名)需要手动步骤来更新测试中的注释。

如果您的要求是为了更准确地估计测试套件的有效性,您可以考虑采用另一种方法进行突变测试。这会将错误导入您的代码,然后检查您的套件是否能够检测到它们。

有许多可用于Java的系统,包括

这里可以比较它们

http://pitest.org/java_mutation_testing_systems/