[英]How do I generate a JaCoCo report for a JAR file?
我們正在嘗試使用 JaCoCo 報告針對預先打包的 JAR 文件的測試代碼覆蓋率。 為此,我們使用帶有附加參數的java -jar
啟動 JAR 文件:
-javaagent:${project.basedir}/tools/jacocoagent.jar=output=tcpserver,port=${jacoco.port}
JaCoCo 的 Maven 插件配置為轉儲執行文件並報告結果:
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.0</version>
<executions>
<execution>
<id>dumpData</id>
<phase>post-integration-test</phase>
<goals>
<goal>dump</goal>
</goals>
<configuration>
<address>localhost</address>
<port>${jacoco.port}</port>
<destFile>target/jacoco.exec</destFile>
</configuration>
</execution>
<execution>
<id>report</id>
<phase>verify</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<dataFile>target/jacoco.exec</dataFile>
</configuration>
</execution>
</executions>
</plugin>
這適用於生成具有非零大小 (~350kB) 的jacoco.exec
文件。
但報告顯示根本沒有報道。 在“會話”鏈接之后,我可以看到 JAR 中列出的類,但報告的主頁顯示如下:
根據日志,我們的代碼似乎已被執行。 JaCoCo 設置中是否缺少一個步驟,或者這應該有效嗎?
以下是實現此目的的步驟:
在傳遞-javaagent
參數的情況下,在單獨的 JVM 中運行 java 應用程序。
針對應用程序運行測試(例如調用 web 服務器上的端點等)
運行dump
和report
目標以生成報告。
你可以查看我關於這個主題的文章。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.