簡體   English   中英

如何為 JAR 文件生成 JaCoCo 報告?

[英]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報告

根據日志,我們的代碼似乎已被執行。 JaCoCo 設置中是否缺少一個步驟,或者這應該有效嗎?

以下是實現此目的的步驟:

  1. 在傳遞-javaagent參數的情況下,在單獨的 JVM 中運行 java 應用程序。

  2. 針對應用程序運行測試(例如調用 web 服務器上的端點等)

  3. 運行dumpreport目標以生成報告。

你可以查看我關於這個主題的文章

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM