我正在使用VSTS托管代理VS2017运行构建、测试和SonarQube分析。我正在使用市场上的SonarQube扩展(https://marketplace.visualstudio.com/items?itemName=SonarSource.sonarqube)。使用的任务版本为4,使用的是SonarQube Scanner for MSBuild 4.0.2。
分析工作正常,但它不会将代码覆盖率结果转换为SonarQube。我可以在VSTS(构建详细信息)中看到代码覆盖率分析,但在SonarQube中却看不到。
据我所知,问题在于VSTS生成了一个扩展名为.codecoverage的二进制文件。SonarQube不知道如何处理这个文件。我很难将其转换为XML格式,因为似乎没有办法做到这一点。
有人成功地使用VSTS和SonarQube,并将代码覆盖率结果传递到SonarQube吗?你是如何设置的?
编辑1 我使用的SonarQube版本是: Version 6.7 (build 33306),社区版。
分析工作正常,但它不会将代码覆盖率结果转换为SonarQube。我可以在VSTS(构建详细信息)中看到代码覆盖率分析,但在SonarQube中却看不到。
据我所知,问题在于VSTS生成了一个扩展名为.codecoverage的二进制文件。SonarQube不知道如何处理这个文件。我很难将其转换为XML格式,因为似乎没有办法做到这一点。
有人成功地使用VSTS和SonarQube,并将代码覆盖率结果传递到SonarQube吗?你是如何设置的?
编辑1 我使用的SonarQube版本是: Version 6.7 (build 33306),社区版。
编辑2
实际上,分析的结束会生成XML文件,就像下面的评论中所述。这是来自日志的信息:
2018-03-06T11:14:56.4189055Z 11:14:56.417 Attempting to locate the
CodeCoverage.exe tool...
2018-03-06T11:14:56.4210147Z 11:14:56.42 Attempting to locate the
CodeCoverage.exe tool using setup configuration...
2018-03-06T11:14:56.4345085Z 11:14:56.433 Code coverage command line tool:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Team
Tools\Dynamic Code Coverage Tools\CodeCoverage.exe
2018-03-06T11:14:56.4349101Z 11:14:56.434 Fetching code coverage report
information from TFS...
2018-03-06T11:14:56.4363869Z 11:14:56.435 Attempting to locate a test
results (.trx) file...
2018-03-06T11:14:57.0458245Z 11:14:57.044 Looking for TRX files in:
D:\a\1\TestResults, D:\a\1\s\TestResults
2018-03-06T11:14:57.0462747Z 11:14:57.045 Located a test results file:
D:\a\1\s\TestResults\VssAdministrator_factoryvm-az436_2018-03-
06_11_13_09.trx
2018-03-06T11:14:57.0600587Z 11:14:57.059 One code coverage attachment was
found in the trx file: factoryvm-az436\VssAdministrator_factoryvm-az436
2018-03-06 11_11_34.coverage
2018-03-06T11:14:57.0602504Z 11:14:57.059 Absolute path to coverage file:
D:\a\1\s\TestResults\VssAdministrator_factoryvm-az436_2018-03-
06_11_13_09\In\factoryvm-az436\VssAdministrator_factoryvm-az436 2018-03-06
11_11_34.coverage
2018-03-06T11:14:57.0691948Z 11:14:57.068 Executing file C:\Program Files
(x86)\Microsoft Visual Studio\2017\Enterprise\Team Tools\Dynamic Code
Coverage Tools\CodeCoverage.exe
2018-03-06T11:14:57.0692731Z Args: analyze
/output:D:\a\1\s\TestResults\VssAdministrator_factoryvm-az436_2018-03-
06_11_13_09\In\factoryvm-az436\VssAdministrator_factoryvm-az436 2018-03-06
11_11_34.coveragexml D:\a\1\s\TestResults\VssAdministrator_factoryvm-
az436_2018-03-06_11_13_09\In\factoryvm-az436\VssAdministrator_factoryvm-
az436 2018-03-06 11_11_34.coverage
2018-03-06T11:14:57.0694963Z Working directory:
D:\a\1\s\TestResults\VssAdministrator_factoryvm-az436_2018-03-
06_11_13_09\In\factoryvm-az436
2018-03-06T11:14:57.0695792Z Timeout (ms):60000
2018-03-06T11:14:57.0699007Z Process id: 3540
2018-03-06T11:14:58.7847582Z 11:14:58.783 Process returned exit code 0
2018-03-06T11:14:58.7858908Z 11:14:58.784 Updating project info files with
code coverage information...