Java 使用Cobertura获得测试覆盖率结果

Java 使用Cobertura获得测试覆盖率结果,java,testing,junit,cobertura,Java,Testing,Junit,Cobertura,我正在使用来自的Cobertura 2.3.0来分析我的项目的测试覆盖率,我得到了一个 Error: Could not find or load main class net.sourceforge.cobertura.instrument.Main 尝试从命令行执行cobertura-instrument.bat时。我看过这个批处理文件,它试图从%COBERTURA_HOME%/lib文件夹加载几个不存在的JAR。我已经手动下载了这些JAR,但是还出现了其他奇怪的错误 java.lang.

我正在使用来自的Cobertura 2.3.0来分析我的项目的测试覆盖率,我得到了一个

Error: Could not find or load main class net.sourceforge.cobertura.instrument.Main
尝试从命令行执行cobertura-instrument.bat时。我看过这个批处理文件,它试图从%COBERTURA_HOME%/lib文件夹加载几个不存在的JAR。我已经手动下载了这些JAR,但是还出现了其他奇怪的错误

java.lang.IncompatibleClassChangeError: class net.sourceforge.cobertura.instrument.pass1.DetectIgnoredCodeClassVisitor has interface org.objectweb.asm.ClassVisitor as super class
是否可能此版本的更新不正确?我看不出有别的办法能让这一切顺利进行。此外,是否有人知道一个有效的测试覆盖率实用程序,最好是一个不同版本的Cobertura


我试过Nonit和其他一些产品,但没有得到我所知道的Cobertura能够生产的清洁产品。

回答我自己的问题,希望它能帮助别人

在撰写本文时,有一个已知的错误,Cobertura在某些情况下抛出ClassNotFoundException。请参见以下问题跟踪页面:


目前,我已经使用了EMMA的EclEmma Eclipse插件来覆盖我的测试代码,并以我想要的方式获得了很好的结果。

你可以尝试通过访问下载最新版本的cobertura吗?@Steve感谢你的回复。我对詹金斯不太熟悉。我如何从这个网站下载?如果它是源头的话,还有建筑?谢谢上面写着最后一个成功的工件,下面有一个可用下载列表。根据您当前的设置,您可能需要获取tar.gz、zip或SNAPSHOT.jar。@Steve感谢您的帮助。这次我提出了一个不同的解决方案。不过,我感谢你的答复。