无法将下载的代码覆盖率工具转换为XML

时间:2015-10-12 10:39:23

标签: c# sonarqube code-coverage tfs2013

我在TFS 2013上启用了代码覆盖。我使用MSBuild.SonarQube.Runner 1.0.1。当我运行分析的结束阶段时。我收到以下错误消息:

    11:36:00.269  Failed to convert the downloaded code coverage tool to XML. No code coverage information will be uploaded to SonarQube.<br/>
     Check that the downloaded code coverage file (C:\Builds\39\[product name]\System_Main_Release_Code_Analysis\.sonarqube\out\VSCodeCoverageReport.coverage) is valid by opening it in Visual Studio. If it is not, check that the internet security settings on the build machine allow files to be downloaded from the Team Foundation Server machine.
     Post-processing failed. Exit code: 1
An error occurred while copying diagnostic activity logs to the drop location. Details: Forbidden

在构建服务器上没有VSCodeCoverageReport.coverage文件 - 至少不在指定的位置并且具有该名称。但是,当我单击TFS构建摘要中的(覆盖率结果)时,将下载在代码覆盖率结果窗口中在Visual Studio中打开的覆盖文件。

可能是什么问题?

1 个答案:

答案 0 :(得分:1)

问题是已解决。 构建代理上的代理设置已更改。这导致对TFS服务器或任何本地地址的http请求失败 特别值得一提的是,因为代理构建日志告诉您构建的所有细节是无法传输到放置位置的文件。

所以我在Sysinternals中使用 ProcMon ,在构建期间启用了文件监视器。过去成功构建与当前失败构建之间的比较显示我丢失了哪个文件(代理日志文件)。在ProcMon中搜索此文件,显示该文件在构建代理上的位置。代理日志文件包含Dinesh试图帮助我的Downloading coverage file from {0} to {1}行。粘贴到浏览器中的http地址显示“拒绝访问”消息。
从那里分析代理设置是合乎逻辑的步骤。最终解决的问题是在局域网(LAN)设置中检查“绕过代理服务器寻找本地地址