【问题标题】:Import code coverage from PHPUnit to sonarqube将代码覆盖率从 PHPUnit 导入到 sonarqube
【发布时间】:2019-09-12 12:13:35
【问题描述】:

我在将代码覆盖率报告从 PHPUnit 导入 Sonarqube 时遇到问题。

  • SonarCube V7.4
  • PhpUnit 5.7.2
  • PHP 7.3.4.1

phpunit.xml

 <logging>
        <log type="coverage-clover" target="_reports/logs/clover.xml"/>
        <log type="coverage-xml" target="_reports/coverage/coverage.xml"/>
        <log type="testdox-text" target="_reports/testdox/executed.txt"/>
 </logging>

sonar-project.proporties

sonar.tests=tests
sonar.php.coverage.reportPaths=tests/_reports/logs/clover.xml

在 phpunit 中运行测试后,会在 tests/_reports 中正确生成报告。 通过声纳运行分析后,分析成功没有失败,但覆盖范围不可见。

我不知道我在哪里做错了我的配置。我能做些什么来重新爱它? 提前谢谢你。

【问题讨论】:

    标签: php sonarqube phpunit code-coverage


    【解决方案1】:

    PhpUnit 5.7.2 使用绝对路径生成 xml 覆盖,如果您使用的是 vagrant 或 docker,然后在 Windows 上运行声纳检查这些路径是否有效。 下次使用 -X 标志运行声纳以获取更多信息。

    【讨论】:

    • 谢谢你,你说得对,我正在使用 vagrant,问题出在路径上。
    • 我在使用 Docker 时遇到了同样的问题。为了解决这个问题,我从容器中运行了声纳扫描仪,项目的类路径由 PHPUnit 生成。之后,我在 SonarQube 中进行了报道。
    猜你喜欢
    • 2017-01-25
    • 2016-09-13
    • 2012-05-04
    • 2018-01-11
    • 2018-05-29
    • 2012-08-04
    • 2021-06-04
    • 1970-01-01
    • 2015-11-06
    相关资源
    最近更新 更多