【问题标题】:How to get code coverage in SonarQube for MAVEN multi-module project如何在 SonarQube 中为 MAVEN 多模块项目获取代码覆盖率
【发布时间】:2019-08-20 05:43:42
【问题描述】:

我已经为 maven 多模块项目配置了 SonarQube 扫描仪,它工作正常,我正在获取有关错误、代码气味、漏洞和重复块等的数据。

这是我的 sonar-projects.properties 文件

sonar.projectKey=MyProject
sonar.projectName=My-Project
sonar.login=xxxxxxxxxxxxx
sonar.language=java
sonar.java.binaries=/home/build_dir/My-Project

sonar.modules=module1,module2

module1.sonar.sources=myModule1,test
module2.sonar.sources=mybModule2,test

在这里,我正在获取两个模块的代码行、错误、漏洞、代码气味、重复项的结果/数据,但我不知道为什么我的“覆盖率”列显示 0.0%。

谁能帮我解决这个问题

仅供参考:我已集成 maven-clover-plugin 以获取代码覆盖率报告,但我不知道如何将这些报告与声纳集成

谢谢

【问题讨论】:

    标签: java maven sonarqube sonarqube-scan


    【解决方案1】:

    你有一个 Maven 项目,所以你应该使用SonarQube Scanner for Maven。一开始删除sonar-projects.properties文件,然后执行扫描器:

    mvn sonar:sonar -Dsonar.clover.reportPath=target/clover-report.xml
    

    这是我找到的唯一 SonarQube Clover 插件:sfeir-open-source/sonar-clover。您必须将其安装在服务器上。不幸的是,它已经很老了,所以我不确定是否可以用 Clover 报告来提供 SonarQube。

    【讨论】:

    • 谢谢 agabrys,但我这里有多个 clover.xml 文件(每个模块)你能建议我如何为每个模块使用声纳扫描仪以及它如何反映在声纳端口中。
    • 你试过了吗? XML 报告的路径是相对的。如果每个模块中都有target/clover-report.xml 文件,那么它应该可以工作。
    • 运行命令时报错:[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project MyProject: Error when executing blame for file CODE_PATH/SomeLibrary.java: svn: E170001: Authentication required for '<https://my.svn.net:443> Authorization Realm' -> [Help 1],不知道为什么要求SVN认证
    • 不要混合 Clover 报告和 JaCoCo。
    • 朱利安你是对的,我累了,写了一个错误的答案。
    猜你喜欢
    • 2011-09-16
    • 2017-06-24
    • 2021-09-10
    • 2014-10-03
    • 2022-08-16
    • 2021-11-17
    • 2017-01-10
    • 1970-01-01
    • 2014-11-12
    相关资源
    最近更新 更多