如何在TFS 2013的持续构建集成中使用代码覆盖工具?

时间:2017-01-24 13:05:44

标签: tfs code-coverage opencover

我正在使用TFS 2013 \ VS 2013专业版进行持续构建。我希望使用像OpenCover这样的开源工具进行代码覆盖。我没有代码覆盖工具的经验。我从Nuget安装了OpenCover UI,但不确定如何在TFS中集成构建中包含Codecoverage。获得"无代码覆盖率结果"当构建运行时。

我在构建定义中的自动化测试节点下启用了代码覆盖率。

对于如何在TFS \ VS 2013专业版中实现代码覆盖率的任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您的意思是构建定义中的启用代码覆盖率,就像下面的screeshot一样。

enter image description here

这是VS内置代码覆盖率,根据Compare VS offerings网站,只有 Visual Studio Enterprise 具有代码覆盖功能,因此如果您使用TFS进行CI构建并希望使用内置代码覆盖功能,需要在构建代理计算机上安装VS Enterprise。

如果要将 OpenCover 与TFS XAML构建集成,则需要自定义构建过程模板,在构建定义中添加自定义活动以触发用于生成报告的opencover命令。

        

有cmd内容:

@REM @echo suppresses command line. ^ is line continuation character
@ECHO Executing OpenCover...
OpenCover.Console.exe -register:user ^
-target:"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\MSTest.exe" ^
-targetargs:"/testcontainer:%~dp0test.dll /usestderr /resultsfile:%~dp0MSTestsResults.trx" ^
-output:%~dp0opencovertests.xml

更多细节请参考 NaimRajaDíaz在这个类似问题中的回答:Integration of OpenCover with TFS