【发布时间】: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
【问题讨论】: