我米使用的Cobertura-1.9.4.1生成代码覆盖reports.First我将classpath设置为cobertura.jar并在lib文件夹以外的罐子。然后我执行cobertura-instrument.sh。 但在执行时,我得到了0类的错误加载信息。我给编译类的完整路径仍然无法对类进行测试。 那么,我错过了什么或者可能的原因是什么。在UNIX上使用的Cobertura生成代码覆盖报告
0
A
回答
0
您的意思是错误是在仪表期间,还是在运行测试后,覆盖率仍然显示为零?
这里的仪器(蚂蚁)的例子:
<target name="--coverage.instrument">
<delete file="cobertura.ser"/>
<mkdir dir="${coverage.instrumented.dir}"/>
<cobertura-instrument todir="${coverage.instrumented.dir}">
<fileset dir="${classes.main.dir}">
<include name="**/*.class"/>
<exclude name="**/*Test.class"/>
</fileset>
</cobertura-instrument>
</target>
不要忘记,你(在蚂蚁junit任务如)测试时需要这个sysproperty:
<sysproperty key="net.sourceforge.cobertura.datafile" file="cobertura.ser"/>
一旦的Cobertura设置一个仪表已经发生,执行的例子:
<target name="--test.unit">
<mkdir dir="${temp.dir}/unit-tests"/>
<junit forkmode="perBatch" printsummary="yes" haltonfailure="no" haltonerror="no"
failureproperty="unit.tests.failed">
<sysproperty key="net.sourceforge.cobertura.datafile" file="cobertura.ser"/>
<classpath refid="classpath.test.utest"/>
<formatter type="xml"/>
<batchtest fork="yes" todir="${temp.dir}/unit-tests">
<fileset dir="${java.src.utest.dir}" includes="**/*Test.java"/>
</batchtest>
</junit>
</target>
0
我相信Cobertura的最新版本不适用于JDK5。强烈建议升级JDK。
相关问题
- 1. 如何使用Hudson的Maven生成Cobertura代码覆盖率报告
- 2. 使用cobertura插件转到Jenkins的代码覆盖率报告
- 3. 如何使用Ant生成Emma代码覆盖率报告?
- 4. 使用实体生成代码覆盖率报告
- 5. Freemarker自动生成代码的Cobertura代码覆盖率
- 6. jenkins管道作业的Cobertura代码覆盖率报告
- 7. TestNG覆盖报告生成
- 8. Hudson在生成Cobertura覆盖报告时生成失败,显示NoClassDefFoundError
- 9. 伊斯坦布尔:使用摩卡生成代码cobertura报告
- 10. Cobertura报告没有增加Powermock代码覆盖率
- 11. 使用maven插件生成Cobertura报告
- 12. Cobertura - 代码覆盖仪表
- 13. Cobertura报告生成问题
- 14. JUnit测试与Cobertura覆盖率报告
- 15. 在PHPUnit之外生成代码覆盖率报告
- 16. 错误:无法生成emma覆盖率。在classpath上是否有emma jar?而生成代码覆盖率报告
- 17. Cobertura生成不正确的代码覆盖范围
- 18. 如何在android studio中使用Jacoco生成androidTest的代码覆盖率报告
- 19. 无法获得代码覆盖报告使用jmockit覆盖jar
- 20. 如何从Hudson生成Emma代码覆盖率报告?
- 21. 如何使用Cobertura Maven插件查看HTML覆盖率报告?
- 22. 生成jstestdriver覆盖率报告
- 23. Cobertura代码覆盖率是错误的
- 24. 的Cobertura拒绝承认代码覆盖
- 25. 排除Cobertura代码覆盖的方法
- 26. 使用gradle为单个单元测试生成Jacoco代码覆盖率报告
- 27. 艾玛代码覆盖率报告
- 28. pydev代码覆盖率报告为零
- 29. maven emma代码覆盖率报告
- 30. PHPUnit代码覆盖率报告0/0
那么在检测过程中出现错误,因为cobertura.ser文件没有变化。错误是我得到的消息:找到2个文件到仪器和0个类到仪器。我试图测试的代码是编译java类。所以我不明白为什么cobertura不能测试代码。 – nikhil
啊,我明白了。 。 。我很久以前就遇到过类似的情况,但现在记忆很模糊。 。我认为这是最新版本的Cobertura不喜欢JDK5。 。 。 (现在可能无关紧要)。 –
我使用1.9.4.1版本,我尝试使用的java代码可能是使用jdk5开发的。那么你是否说我们正在使用的cobertura和jdk版本之间必须兼容。 java版本和cobertura版本之间还有什么关系,如何使用。如果我应该使用哪个jdk和java版本? – nikhil