声纳立方体未正确显示Java项目的测试覆盖率百分比

时间:2019-07-22 11:57:03

标签: java sonarqube sonarqube-scan sonar-runner sonarqube5.1

我有一个基于Spring的Java项目,并将测试放在/ src / test / java文件夹中。我试图通过

在本地运行Sonar多维数据集

docker run -d --name sonarqube -p 9000:9000 sonarqube

以便分析测试覆盖率的百分比。即使我的项目中有很多测试,测试覆盖率也显示为0%。尽管有更多的单元测试数量显示为8。这是屏幕截图

enter image description here

这是我的常规设置 enter image description here

有人知道如何配置Sonar多维数据集以反映测试范围吗?

1 个答案:

答案 0 :(得分:0)

Sonarqube和声纳扫描仪不提供生成代码覆盖率报告的工具。应该使用诸如Java的jacoco或.NET的opencover之类的工具来完成。

然后您可以使用sonar.coverage.jacoco.xmlReportPaths属性将jacoco的输出添加到声纳扫描仪中。

因此,您基本上需要执行以下步骤进行分析:

  1. 声纳扫描仪开始
  2. 还原软件包
  3. 构建应用程序
  4. 使用代码覆盖率工具来测试和计算应用的覆盖率
  5. 声纳扫描仪端