1

在我的 Angular 项目中,我面临通过声纳云获取代码覆盖率报告的问题。

我已经配置了业力工具来获取测试报告。输出文件正在生成 .xml 格式的测试报告。我也在声纳中配置了测试报告路径:

sonar.cs.vscoveragexml.reportsPaths=$(Agent.BuildDirectory)/TestResults/*.xml

但是 sonar cloud 正在搜索 .trx 扩展名测试报告。下面是错误日志。

06:16:44.724  Looking for TRX files in: D:\a\1\TestResults
06:16:44.724  No test results files found
06:16:45.083  Did not find any binary coverage files in the expected location.
06:16:45.083  Falling back on locating coverage files in the agent temp directory.
06:16:45.083  Searching for coverage files in D:\a\_temp

请求帮助我解决同样的问题。

4

2 回答 2

1

默认情况下,如果不指定其他文件路径,则TRX文件存在于sfile下,它的文件路径在$(System.DefaultWorkingDirectory)下,而不是$(Agent.BuildDirectory)下。

在此处输入图像描述

根据错误信息:

在以下位置寻找 TRX 文件:D:\a\1\TestResults

D:\a\1\TestResults,这是错误的文件路径,默认存在TRX文件。

因此,如果您没有在 VSTest 中指定另一个文件路径,则.TRX文件路径应该读取为D:\a\1\s\TestResultswhich is under$(build.SourcesDirectory)而不是 $(Agent.BuildDirectory) 。

于 2019-07-01T10:36:22.850 回答
0

您可以添加这样的复制任务,以将测试生成的内容传输到 Sonarqube 正在寻找的路径。

在此处输入图像描述

于 2020-08-31T15:35:53.463 回答