我正在扫描ui
项目。
源代码位于typescript
.
gulp test-coverage
产生.js
文件(然后扫描其覆盖范围)。 (每个.ts
文件得到一个.js
文件就在它旁边,在同一位置)
我将扫描仪指向lcov.info
文件如下:
sonar.javascript.lcov.reportPaths=test-coverage/lcov.info
问题:
The lcov.info
,提供覆盖信息.js
files
出于某种原因,SonarQube 还提供了以下内容的覆盖范围信息:*.ts
文件(虽然not合并
在测试覆盖率报告中)。
这是为什么?
如果我明确使用
sonar.inclusions=**/*.ts
or
sonar.language=ts
the .js
文件将从覆盖率报告中被忽略
If I use
sonar.coverage.exclusions=**/*.ts
并且没有特定的包含物,这将导致both the .ts
and .js
正在扫描文件是否有错误,这最终会导致重复错误(毕竟,.js
文件是由他们生成的.ts
同行。
有什么建议么?
当然,如果 sonarqube 把lcov.info
并且没有主动扫描其他文件。)
如果您的源代码是用 TypeScript 编写的,则覆盖率报告 (lcov.info
) 必须包含有关 TypeScript 文件的信息,而不是已编译的 JavaScript。在这种情况下您必须使用的属性是sonar.typescript.lcov.reportPaths
.
您可以查看这个示例(https://github.com/SonarSource/SonarTS-example)以获取更多详细信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)