单元测试 - Java每个测试的代码覆盖率

3
我们使用JUnit来对我们的Java代码进行单元测试。今天,我们使用Cobertura来获取覆盖率数据。但是,它没有一种简单的方法来获取每个测试的覆盖率数字。是否有一种工具可以获取每个测试的代码覆盖率 - 商业/免费?(Cobertura有一个补丁可以获取每个测试的覆盖率数字,但已经过时了)。

可能是确定哪些测试覆盖了一行代码的重复问题。 - Ned Batchelder
1
@Ned:那不是同一个问题。 - Ira Baxter
3个回答

1

Emma提供了针对块和行覆盖率的整体/包/类别详细报告。


1

我们很好地利用了Clover。我们编写了一些Ant任务,使我们能够从开发机器上运行它,以便我们可以在本地查看覆盖率数字,并将其集成到我们的持续集成中,因此我们有一个官方数字的网站。

http://www.atlassian.com/software/clover/

我们遇到的唯一问题是它会占用大量内存....


谢谢大家。在我尝试之前需要一段时间。我希望接受答案是一个可以的步骤 :) - Jayan

0
显然的方法是运行一个测试并且导出测试覆盖数据。(实际上,这是唯一的方法)。
我们的SD Java Test Coverage Tool有明确的DumpVectorsResetVectors过程,可随时调用。通过调整单元测试框架,只需在测试之间调用这两个过程,您就可以获得每个单元测试的一个测试覆盖向量。
显示工具将显示任何单个测试的覆盖向量。它还可以给出整个集合的联合(好像您已经运行了所有测试)或计算一个测试与另一个测试重叠的情况。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接