环境:SonarQube 5.6 - SonarQube Runner 2.4 - MSBuild.SonarQube.Runner-2.0 - TFS 2015 - C#6
我有一个带有C#6项目和单元测试的Visual Studio 2015解决方案。在我的TFS 2015服务器上,我定义了一个构建(基于任务,而不是xaml)。在我的构建中,我添加了以下步骤: - 用于MSBuild的SonarQube - 开始分析。 - Visual Studio测试 - 用于MSBuild的SonarQube - 结束分析。
一切运行正常(构建,单元测试执行,代码覆盖率,基于SonarLint的分析结果,......除了我没有在Sonar报告中看到测试结果(代码覆盖率在那里!)。
我尝试添加一些参数: - 开始分析:我添加了:/d:sonar.cs.vstest.reportsPaths = ../TestResults/*.trx - vstests console:/ Logger:trx
在最后的分析日志中,我看到了:
尝试查找测试结果(.trx)文件... 找到测试结果文件:E:\ agent_work \ 3 \ TestResults \ tests_results_2016-06-23 14_07_22.trx 传感器org.sonar.plugins.csharp.CSharpUnitTestResultsProvider $ CSharpUnitTestResultsImportSensor 传感器org.sonar.plugins.csharp.CSharpUnitTestResultsProvider $ CSharpUnitTestResultsImportSensor(done)|时间= 0毫秒
我知道为什么我总是在声纳报告中看到单元测试= 0?
答案 0 :(得分:0)
您需要提供.trx文件的完整路径。在开始分析中进行以下更改并再次尝试。
更改强>
/d:sonar.cs.vstest.reportsPaths=../TestResults/*.trx
要强>
/d:sonar.cs.vstest.reportsPaths=../TestResults/Mytest.trx