SONAR 无法发布伊斯坦布尔报告的代码覆盖率

SONAR unable to publish code coverage for istanbul reports

我目前正在使用 Sonar Qube 6.1 版和 Istanbul 作为测试 运行ner。我看到生成了 lcov.info 文件。下面是它的样子:

TN:
SF:/opt/jenkins_build/workspace/SONAR_QUBE_IMPLEMENTATIONS/Myapp-
CI/public/elements/asset-browser/asset-browser.html
FNF:0
FNH:0
DA:28,2
LF:1
LH:1
BRF:0
BRH:0
end_of_record
TN:
SF:/opt/jenkins_build/workspace/SONAR_QUBE_IMPLEMENTATIONS/Myapp-
CI/public/elements/views/reports-view.html
FNF:0
FNH:0
DA:15,1
LF:1
LH:1
BRF:0
BRH:0
end_of_record

在日志中我看到以下错误,当我 运行 声纳 运行ner.

02:18:20.322 INFO  - Unit Test Coverage Sensor is started
02:18:20.323 INFO  - 1/1 source files have been analyzed
02:18:20.325 INFO  - Analysing 
[/opt/jenkins_build/workspace/SONAR_QUBE_IMPLEMENTATIONS/Myapp-
CI/coverage/lcov.info]
02:18:20.348 WARN  - Could not resolve 2 file paths in 
[/opt/jenkins_build/workspace/SONAR_QUBE_IMPLEMENTATIONS/Myapp-
CI/coverage/lcov.info], first unresolved path: 
/opt/jenkins_build/workspace/SONAR_QUBE_IMPLEMENTATIONS/Myapp-
CI/public/elements/asset-browser/asset-browser.html

这就是我的 sonar.project.properties 的样子:

#-- SonarQube server URL
sonar.host.url=http://localhost:9000/sonar

#-- Required Project Properties
sonar.projectKey=Reporting-App
sonar.projectName=Reporting-App
sonar.projectVersion=1.0
sonar.sources=public

#-- Sonar Quality Profile
javascript.sonar.language=js

#-- Report generated in form of
sonar.issuesReport.html.enable=true
sonar.issuesReport.console.enable=true

#-- Specify if any files to include or exclude
sonar.exclusions=tasks/***,public/bower_components/**,public/_index-inline-
loading-script.js

# Encoding of the source files
sonar.sourceEncoding=UTF-8

#-- Coverage Reports
#sonar.javascript.lcov.reportPaths=coverage/lcov.info,coverage/lcov/lcov.info
sonar.javascript.lcov.reportPath=coverage/lcov.info

声纳仪表板显示我的应用程序覆盖率为 O%。但是,当我从 jenkins 访问资产 browser.html 和 reports.html 时,它具有正确的覆盖率。到目前为止,这对我来说是一场噩梦。

您的报告仅包含 HTML 个文件,不被视为 JavaScript 个文件。使用 属性 sonar.javascript.lcov.reportPath

仅导入 javascript 个文件的覆盖率