我正在使用Jenkins+Jacoco+Sonarqube来测试我的代码。在 Jenkins 中,我的 mvn 命令是:
mvn clean install sonar:sonar.
在 Jenkins中构建代码后,我能够看到 Jenkins 中的代码覆盖率。 但是我无法在SonarQube中获得适当的覆盖率。
这可能是源路径问题,也许您没有分析相同的源。在 Jacoco 和 Jenkins 中,是否有任何未在 SonarQube 属性中排除的排除源文件,反之亦然?
您的命令不包括报告的生成。请尝试:
mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install sonar:sonar
分解一下:
mvn
调用构建系统clean
删除所有旧的生成输出org.jacoco:jacoco-maven-plugin:prepare-agent
启用测试报告install
在本地 Maven 存储库中构建并安装结果sonar:sonar
运行声纳Qube分析