gpt4 book ai didi

java - SonarQube + Reports 中未显示的依赖模块中的聚合覆盖率或覆盖率由 Jacoco 生成

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:35:21 34 4
gpt4 key购买 nike

我正在运行 jacoco 插件来生成 html 、 xml 和 jacoco.exec 报告来衡量由我的 testNg 测试的代码的覆盖率测试。

我在本地和 Jenkins 中成功生成了这些报告,我所有的单元测试结果都反射(reflect)在 Sonar 中,它向我展示了覆盖范围.

我的jacoco.exec有模块和依赖模块的覆盖结果。我已经使用 eclipseeclemma 插件 验证了这一点。

我没有在 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 plugin coverage in multi-module 得到了答案

以下是我造成问题的错误。在我们的 pom 的属性中

 <sonar.jacoco.reportPath>${project.basedir}/../target/jacoco.exec</sonar.jacoco.reportPath>

在插件中

 <destFile>${sonar.jacoco.reportPath}</destFile>

对我来说,由于 maven 模块层次结构的差异,上述语句刷新了不同文件夹中的 jacoco.exec,结果它们从未聚合。

第二点,依赖模块覆盖率只有在对测试模块是编译时依赖时才会获取。

关于java - SonarQube + Reports 中未显示的依赖模块中的聚合覆盖率或覆盖率由 Jacoco 生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52676630/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com