Java Jacoco ant任务-无Jacoco.exec输出
我将Ant任务配置为Java Jacoco ant任务-无Jacoco.exec输出,java,ant,jacoco,Java,Ant,Jacoco,我将Ant任务配置为 <target name="test" depends="init"> <jacoco:coverage destfile="target/jacoco.exec"> <junit printsummary="yes" haltonfailure="yes" fork="yes" forkmode="once"> <classpath refid="my_project.path"/&
<target name="test" depends="init">
<jacoco:coverage destfile="target/jacoco.exec">
<junit printsummary="yes" haltonfailure="yes" fork="yes" forkmode="once">
<classpath refid="my_project.path"/>
<formatter type="plain"/>
<formatter type="xml"/>
<batchtest fork="false" todir="target/test-reports">
<fileset dir="test">
<include name="**/*Test.java"/>
</fileset>
</batchtest>
</junit>
</jacoco:coverage>
</target>
报告:[jacoco:report]正在加载执行数据文件
/home/usr/workspace/my_project/target/jacoco.exec
生成失败/home/usr/workspace/my_project/BUILD.xml:73:无法读取
执行数据文件/home/usr/workspace/my_project/target/jacoco.exec
总时间:14秒
好像我遗漏了什么,看不清具体是什么。单独运行
报告
任务是不够的。您必须配置并运行coverage
Ant任务,以便将覆盖率数据记录到jacoco.exec
文件中。请参见我找到了原因。这很愚蠢,但没有记录来指示错误:
batchtestfork=“true”todir=“目标/测试报告”
在batchtest中,fork参数设置为false。将其设置回“true”将生成预期的jacoco。exec面临同样的问题,对我来说,我的junit不合适。
在
报告
之前运行的测试任务中,按照链接我正在调用覆盖率
。这不足以创建输出文件吗?抱歉,您正在运行覆盖率任务。给人的印象是你正在执行报告任务。显然,必须再次查看您的配置。我的apologies@Olivier.Roger从文档中可以看出:嵌套任务始终必须声明fork=“true”,否则覆盖率任务无法记录覆盖率信息,将失败。“fork=yes”是否等效?我已经很久没有和AntYou一起工作了。你说得对,应该是fork=“true”,但我尝试了很多东西,我在后退时犯了一个错误。显然,这是等效的,因为错误表明测试没有分叉。我将其切换回fork=“true”,结果中看不到任何更改。谢谢,确实是fork参数导致了问题,但batchtest中的参数,而不是junit;)您或某人能否详细说明哪些价值观对jacoco有效,以及原因(有相同的问题)
...
[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0,009 sec