Sonarqube:查看覆盖源的unit testing

我们在Bamboo中有一个CI设置,它运行Junit测试并使用Jacoco计算unit testing覆盖率。 然后我们运行Sonar插件进行源代码分析。 一切都很好,我们可以看到SonarCube服务器上的分析,包括覆盖范围,但我们希望确切地看到哪些测试涵盖了某些代码行。 现在它只是说: 由unit testing覆盖

有没有办法做到这一点?

我在示例声纳项目中找到了答案: https : //github.com/SonarSource/sonar-examples/tree/master/projects/languages/java/code-coverage/ut/ut-maven-jacoco 。

Jacoco监听器必须配置为surefire插件。

 org.apache.maven.plugins maven-surefire-plugin  2.13    listener org.sonar.java.jacoco.JUnitListener     

和依赖性添加:

   org.sonarsource.java sonar-jacoco-listeners 3.8 test  

还需要声纳插件的以下参数的某些组合:

 sonar.java.surefire.reportspath sonar.junit.reportsPath sonar.tests=src/test 

最后一个签署了这笔交易