我正在使用Jenkins + Jacoco + Sonarqube来测试我的代码。 在詹金斯,我的mvn命令是:
clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.skip=false -Dmaven.test.failure.ignore=true sonar:sonar
然后在构建后添加动作“记录雅各布覆盖率报告”。
但是结果是,詹金斯的工作原理如下:
它显示覆盖率报告和其他信息。但是我无法在sonarQube中获得覆盖率,因此无法通过Sonarqube中的质量门。
我想声纳找不到覆盖率报告,因为它在SonarQube的“代码”选项卡中不存在。
请帮助我,我急需解决方案。
答案 0 :(得分:2)
为了在SonarQube中显示覆盖范围,您应该配置sonarqube.properties文件。在声纳属性中,有一个名为sonar.jacoco.reportPaths
的参数。您应该通过提供jacoco.exec
文件的路径来添加此参数。例如:
sonar.jacoco.reportPaths=yourpath/jacoco.exec
答案 1 :(得分:0)
sonar读取由插件执行创建的jacocoexec文件,如果正在创建文件,则可以在项目的目标文件夹下,如果文件的路径不同,则需要在声纳属性文件中提供该文件>