Java 科贝图拉vs三叶草

Java 科贝图拉vs三叶草,java,unit-testing,cobertura,clover,Java,Unit Testing,Cobertura,Clover,我们正在考虑在开发过程中使用这些工具之一。我们的环境广泛使用mvn和eclipse 您认为哪一个是检查测试覆盖率的最佳工具?我意识到,这可能取决于具体情况,以确定何时使用cobertura优于clover,反之亦然 提前谢谢我没有用过三叶草。我使用了Cobertura:它很容易设置,并提供了我们想要和期望的简单C1覆盖结果。有一个问题,它总是运行所有的测试两次(一次有仪器,一次没有仪器),即使我们觉得我们不需要。然而,由于测试套件足够短,它从未困扰过我们。我面临类似的困境,测试了Cobertur

我们正在考虑在开发过程中使用这些工具之一。我们的环境广泛使用mvn和eclipse

您认为哪一个是检查测试覆盖率的最佳工具?我意识到,这可能取决于具体情况,以确定何时使用cobertura优于clover,反之亦然


提前谢谢

我没有用过三叶草。我使用了Cobertura:它很容易设置,并提供了我们想要和期望的简单C1覆盖结果。有一个问题,它总是运行所有的测试两次(一次有仪器,一次没有仪器),即使我们觉得我们不需要。然而,由于测试套件足够短,它从未困扰过我们。

我面临类似的困境,测试了Cobertura和Clover。科伯图拉和爱玛。就速度和细节程度而言,Clover可能是3种工具中最好的。当时我们买得起工具,所以我们决定用Clover。在这两个开源软件中,我喜欢使用Emma的简单性。另外,Emma为我们提供了方法级的覆盖,而Cobertura没有


在一天结束的时候。代码覆盖率指标只是代码覆盖率指标,没有什么特别之处。只要用你觉得舒服的东西。使用这些工具中的任何一个都会带来最小的痛苦

我也试过Clover、Cobertura和Emma。我们现在使用的是Cobertura。我花了大约一天的时间将Cobertura集成到我们的headless构建中,它生成了我们所需的统计数据,eCobertura eclipse插件很原始,但可用且信息丰富。还有一个非常好的Hudson插件用于Cobertura

我们以前使用过Emma。带有EclEmma插件的Emma大约相当于Cobertura/eCobertura。Emma集成到Ant中是一个更复杂的分形,不提供复杂性因素。EclEmma插件比eCobertura更好、更成熟。Hudson插件是等效的,并且易于配置。我们离开Emma的原因是代码库已经有几年没有维护了,我们遇到了一些问题,因为如果遇到使用Lombok的代码,它将变得无用

我花了一个星期(与其他任务并行)玩Clover,但没能让它工作。我询问了我的同事,其中一些有很多经验,只有一个人听说有人在建造中使用了Clover,这很困难


由于Cobertura提供了我们所需的一切,易于使用,而且是免费的,我们认为没有理由花钱购买Clover。

我们目前正在使用Cobertura,我对此印象非常深刻。将它集成到我们现有的构建和单元测试过程中非常容易(我认为完全运行不到一个小时)。此外,我们的软件堆栈是Java和Groovy的混合体,Cobertura可以很好地处理它们,甚至可以按照您希望的方式覆盖闭包。(根据我的经验,实际上很少有Java工具能够与非Java JVM语言一起正常工作,因此这是一个惊喜。)

值得注意的一个区别是,Cobertura目前不支持Java 7:

Clover 3.1.x确实支持Java 7:


更新:Cobertura 2.0.3支持Java 7

这个问题有两个问题。1) 你的确切目标是什么?对于许多目标,Cobertura和Clover同样适用,但对于特定的用例,人们可能更喜欢其中一个。2) 很少有人会同时使用这两种方法,而且只有一种方法有经验的人都不愿意回答,即使一句简单的“它对我们有用”对你来说就足够了。我应该提到,在回复之前的帖子时,Cobertura现在提供了方法级别的覆盖率统计信息。你的Cobertura是否统计Lomboks注释的覆盖率(
@Getter@Setter
)?我大部分的豆子都是红色的,因为龙目山。。。这让我很生气:)Cobertura 2.0.3支持Java 7,使用这个版本的Cobertura maven插件2.6版本刚刚发布