![](/img/trans.png)
[英]SonarQube showing 0% code coverage but JaCoCo reports are correct
[英]Aggregated Coverage or Coverage in the dependent modules not shown in SonarQube + Reports are generated by Jacoco
我正在运行jacoco
插件来生成html,xml和jacoco.exec
报告,以测量我的testNg
测试所测试代码的覆盖范围。
我在本地以及Jenkins
成功生成了这些报告,我的所有单元测试结果都反映在Sonar
,它向我展示了报道。
我的jacoco.exec
包含模块和依赖模块的覆盖率结果。 我已经使用eclemma plugin
为eclipse
验证了这一点。
我没有在Sonar的依赖模块中获得覆盖结果。任何一个我做错了。
我的插件就是这样的
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
我的目标是jacoco:report-aggregate
我从多模块中的jacoco插件覆盖中得到了答案
以下是我所犯的错误,这些错误导致了我的问题。 在我们的pom的属性
<sonar.jacoco.reportPath>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPath>
并在插件中
<destFile>${sonar.jacoco.reportPath}</destFile>
对我来说,上面的语句将jacoco.exec
刷新到不同的文件夹中,因为maven模块层次结构不同,因此它们从未进行过聚合。
第二点是只有当它是对测试模块的compile time dependency
,才会获得依赖模块的覆盖范围。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.