我试图使用JaCoCo-javaagent传递VM参数来获取代码覆盖率
-javaagent:/test/jacoco/jacocoagent.jar=destfile=/test/jacoco/jacoco.exec,includes=com *,追加=真
我能够在jacoco.exec文件中获得一些价值,但无法获得覆盖率报告。如何将jacoco.exec转换为覆盖率报告或我在VM中遗漏了什么参数。
条件就像我只有jar和war并使用jBoss服务器来运行应用程序。
答案 0 :(得分:0)
运行SonarQube,其中包括优秀的JaCoCo报告。无需自己解析JaCoCo的二进制输出。
使用各种工具(包括命令行)运行它的说明链接是here。
您需要运行声纳服务器。您可以下载here。在Mac上,你可以做到
brew install sonar
sonar console
例如,Maven的命令是
mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=true
mvn sonar:sonar
答案 1 :(得分:0)
您可以使用org.jacoco:jacoco-maven-plugin:report
maven目标生成JaCoCo报告。例如:
的pom.xml
...
<profiles>
<profile>
<id>jacoco-report</id>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.5.201505241946</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
mvn -Pjacoco-report clean install
jacoco maven插件在target/site/jacoco
目录中生成报告后。