[英]Jacoco ant task - no jacoco.exec output
我將我的 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"/>
<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>
這會產生預期的junit 結果。 但是,永遠不會創建target/jacoco.exec
。 我在ant test report
任務執行過程中沒有任何錯誤。
測試:[jacoco:coverage] 通過覆蓋增強 junit
... [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0,009 sec
報告:[jacoco:report] 正在加載執行數據文件 /home/usr/Workspaces/my_project/target/jacoco.exec
構建失敗 /home/usr/Workspaces/my_project/build.xml:73: 無法讀取執行數據文件 /home/usr/Workspaces/my_project/target/jacoco.exec
總時間:14秒
好像我錯過了一些東西,無法看到究竟是什么。
我找到了原因。 這很愚蠢,但沒有記錄來指示錯誤:
batchtest fork="true" todir="target/test-reports"
在批處理測試中 fork 參數設置為 false。 將其設置回“true”會產生預期的jacoco.exec 。
單獨運行report
任務是不夠的。 您必須配置並運行一個coverage
Ant 任務,以便將覆蓋數據記錄到jacoco.exec
文件中。 看這里
面臨同樣的問題,對我來說,我的 junit 不合適。 按照這里的鏈接
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.