如何在不使用maven的情况下将Jacoco报告与SonarQube集成?

时间:2015-01-05 11:38:31

标签: sonarqube jacoco sonar-runner

我使用Jacoco eclipse插件来测量单元测试覆盖率,并且我能够使用它导出报告。我想将该报告与声纳集成,因此我在项目属性文件中给出了它的路径。 我的属性文件看起来像这样

# Required metadata
sonar.projectKey=key
sonar.projectName=name
sonar.projectVersion=1.0
sonar.jacoco.reportPath=jacoco.exec
sonar.tests=junit
sonar.dynamicAnalysis=reuseReports
sonar.java.coveragePlugin=jacoco
sonar.jacoco.reportMissing.force.zero=true
# Comma-separated paths to directories with sources (required)
sonar.sources=src

# Comma-separated paths to directories with tests (optional)
sonar.tests=test

# Encoding of the source files
sonar.sourceEncoding=UTF-8

# Language
sonar.language=java

当我执行声纳 - 跑步者时,控制台输出中存在以下行:

16:23:13.219 INFO  - Sensor JaCoCoItSensor...
16:23:13.219 INFO  - No JaCoCo analysis of project coverage can be done since there is no class files.
16:23:13.219 INFO  - Sensor JaCoCoItSensor done: 0 ms
16:23:13.219 INFO  - Sensor JaCoCoOverallSensor...
16:23:13.219 INFO  - Sensor JaCoCoOverallSensor done: 0 ms
16:23:13.219 INFO  - Sensor JaCoCoSensor...
16:23:13.219 INFO  - No JaCoCo analysis of project coverage can be done since there is no class files.

单元测试覆盖率小部件也显示“无数据”。 为什么我无法让Sonar显示覆盖率结果?这样做的正确方法是什么? 这是我对Jacoco的第一次体验,我也是Sonar的新手,因此非常感谢详细的指南。

1 个答案:

答案 0 :(得分:12)

您必须指定“sonar.binaries”属性,该属性指向编译类的文件夹。