我正在使用 SonarQube 6.5,并尝试使用 sonar.javascript.lcov.reportPaths 属性导入 lcov.info 文件以进行代码覆盖。
我的构建是使用 Jenkins 完成的。代码在 /path/to/Deploydirectory/parent-project1/project1/ 进行部署和测试,并在 jenkins 工作区 /path/to/jenkins/workspace/BUILD_DEPLOY/parent-project1/project1/coverage 中生成报告。
我正在使用伊斯坦布尔进行代码覆盖
"scripts": {
"coverage": "./node_modules/.bin/istanbul cover
node_modules/mocha/bin/_mocha --dir=/path/to/jenkins/workspace/BUILD_DEPLOY/parent-project1/project1/coverage"
},
lcov.info 生成如下
TN:
SF:/path/to/Deploydirectory/project1/package/plugins/file1.js
FN:11,convetUTCtoLocal
FN:17,customCallback
FN:26,(anonymous_3)
FN:50,(anonymous_4)
FN:68,(anonymous_5)
FN:95,(anonymous_6)
......
在 SonarQube 上出现错误
无法解析 [/path/to/jenkins/workspace/BUILD_DEPLOY/parent-project1/project1/coverage/lcov.info、/path/to/jenkins/workspace/BUILD_DEPLOY/parent-project2/project2/coverage/ 中的 2 个文件路径lcov.info],第一个未解析的路径:/path/to/Deploydirectory/parent-project1/project1/file1.js
SonrQube 配置
sonar.inclusions=**/*.js
sonar.scm.disabled=true
sonar.sources=$WORKSPACE
sonar.java.binaries=$WORKSPACE
sonar.projectBaseDir=/path/to
sonar.javascript.lcov.reportPaths=
/path/to/jenkins/workspace/BUILD_DEPLOY/parent-
project1/project1/coverage/lcov.info,
/path/to/jenkins/workspace/BUILD_DEPLOY/parent-
project2/project2/coverage/lcov.info
sonar.sourceEncoding=UTF-8