【问题标题】:how to get coverage report as jacocoTestReport.xml in React project如何在 React 项目中获取覆盖率报告为 jacocoTestReport.xml
【发布时间】:2021-07-10 09:58:58
【问题描述】:

我正在为我的 React 项目使用 jenkins 管道来执行测试、构建和部署步骤。

我将 sonarqube 与我的项目集成。但是声纳的 jacoco 没有评估我的覆盖率报告,它是通用覆盖率格式(test-report.xml)

有没有办法在我的 React 项目中将我的报告作为“jacocoTestReport.xml”而不使用 maven 或 gradle。我找不到任何文档或第 3 方工具?

我的相关流水线脚本:

sh '''
   ${scannerHome}/bin/sonar-scanner \
   -Dsonar.projectKey=xxxxxxxxxxxxxx \
   -Dsonar.sources=. \
   -Dsonar.sources=. \
   -Dsonar.coverage.jacoco.xmlReportPaths=test-report.xml \
   -Dsonar.testExecutionReportPaths=test-report.xml \
   -Dsonar.javascript.lcov.reportPaths=coverage/lcov.info \
   -Dsonar.coverageReportPaths=test-report.xml \
   -Dsonar.host.url=https://xxxxxxxxxxxxxx \
   -Dsonar.login=xxxxxxxxxx
'''

相关错误如下:

: Sensor Generic Coverage Report
INFO: Parsing /var/jenkins_home/workspace/**********/test-report.xml
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 36.948s
INFO: Final Memory: 49M/690M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarScanner execution
ERROR: Error during parsing of the generic coverage report '/var/jenkins_home/workspace/*******/test-report.xml'. Look at SonarQube documentation to know the expected XML format.
ERROR: Caused by: Unknown XML node, expected "coverage" but got "testExecutions" at line 2

【问题讨论】:

    标签: sonarqube jacoco


    【解决方案1】:

    我假设你只是在构建一个 react 应用程序,因此它只是 JavaScript/TypeScript,我的回答是基于这个假设。

    如果是这种情况,您可以简单地忽略 sonar.coverage.jacoco.xmlReportPaths 属性。您已经通过lcov.info 文件提供了该信息。 Sonarqube 将能够从此文件中读取覆盖信息。

    此外,test-report.xml 通常只包含已执行测试及其结果的列表。您通常不会在其中找到任何类型的覆盖信息。因此,您的构建也可能在 sonar.coverageReportPaths 属性上中断(我的建议也是删除该属性)。

    【讨论】:

      猜你喜欢
      • 2020-02-25
      • 1970-01-01
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      • 2018-07-18
      • 2014-09-09
      • 2012-01-07
      • 2019-03-16
      相关资源
      最近更新 更多