我正在使用 Visual Studio Team Services 执行自动构建,并使用 SonarQube 显示代码质量、覆盖率等。我还使用私人托管的构建代理。
构建步骤都可以成功地处理数据并将其填充到 SonarQube,这很棒。但是,SonarQube 中没有显示代码覆盖率。查看 VSTS 中的日志后,我发现 SonarQube 正在与 VSTS 将 .trx 文件发布到的目录不同的目录中查找 .trx 文件(其中包含代码覆盖率)。
因此,当 VSTS 构建解决方案时,它会在此处创建测试结果文件:C:\agent_work\3\s\TestResults
但 SonarQube 正在尝试使用此处的测试结果:C:\agent_work\3\TestResults
在构建服务器上,如果我手动将 .trx 文件复制到正确的位置,然后再次运行构建,代码覆盖率都可以正常工作并处理到 SonarQube。因此,问题肯定是 .trx 的发布位置与获取表格的位置不匹配。
我找不到更改发布位置或 SonarQube 源位置的方法。
请帮忙!