0
  • 声纳 4.5.6
  • Maven3.3.9
  • 雅可可 0.7.7.201606060606
  • 詹金斯

使用上述组合,我能够

  • 成功构建我的项目
  • 所有单元测试通过
  • jacoco 正在创建/target/jacoco.exec文件
  • sonarQube 将单元测试覆盖率显示为 100%

但是,我遇到的问题是,SonarQube 中未显示文件级覆盖率。

当我在本地盒子中使用 SonarQube 运行分析时,我得到了如下图 1 所示的覆盖结果。

图 1:本地 SonarQube 的结果

但是,当远程 Jenkins 构建运行时,它只显示图 2 中所示的这一部分。

图 2:远程 SonarQube 的结果

我在两个地方都使用相同的命令mvn clean deploy sonar:sonar,但结果不同。我在这里想念什么?

更新

这是我打开时看到的target/site/jacoco/index.html。所以,看起来 Jacoco 正在生成所有需要的信息。声纳无法识别它。雅可可报告

添加在日志中找到的信息。正如评论中提到的,target/jacoco.exec并且target/sonar/jacoco-overall.exec被发现并且大小为 15KB。

[INFO] [10:08:22.666] Sensor SurefireSensor done: 88 ms
[INFO] [10:08:22.666] Sensor JaCoCoOverallSensor...
[INFO] [10:08:22.675] Analysing /opt/sbs/.jenkins/jobs/CdnJwt/workspace/trunk/target/jacoco.exec
[INFO] [10:08:22.688] Analysing /opt/sbs/.jenkins/jobs/CdnJwt/workspace/trunk/target/sonar/jacoco-overall.exec
[INFO] [10:08:22.744] No information about coverage per test.
[INFO] [10:08:22.744] Sensor JaCoCoOverallSensor done: 78 ms
[INFO] [10:08:23.557] Sensor JaCoCoSensor...
[INFO] [10:08:23.558] Analysing     /opt/sbs/.jenkins/jobs/CdnJwt/workspace/trunk/target/jacoco.exec
[INFO] [10:08:23.566] No information about coverage per test.
[INFO] [10:08:23.566] Sensor JaCoCoSensor done: 9 ms
4

0 回答 0