VSTS-如何获得代码覆盖率结果

时间:2018-08-23 09:49:46

标签: testing azure-devops code-coverage azure-pipelines azure-pipelines-build-task

我是DevOps工作的新手,我受命为一个.net标准库项目设置构建。我为此使用了构建模板,效果很好!但是我想在构建输出中添加代码覆盖率(解决方案中有一个测试项目)。

在“ VsTest-testAssemblies”任务中,我检查了“启用代码覆盖率”选项,如下所示:

enter image description here

我添加了一个“发布代码覆盖”任务,它要求一个名为“摘要文件”的东西-见下文:

enter image description here

我不确定如何设置此选项?有人这样做吗?

我似乎无需配置就可以在构建结果中发布测试结果,如下所示:

enter image description here

我希望构建结果中的“代码覆盖率”选项卡具有相同的功能,该选项卡目前为空白:

enter image description here

我还想(可能是一个完全独立的问题),我是否可以添加“质量门”来表示覆盖率是否低于80%,然后构建失败?

预先感谢您的任何建议-这是知道我想要什么的情况,但不确定如何实现!

2 个答案:

答案 0 :(得分:2)

Hurrah !!! 有一个解决方案。 :)

您必须在VSTS(Azure DevOps)中为您的组织安装一个附件。 插件的名称是Build Quality Checks

这里是链接: https://marketplace.visualstudio.com/items?itemName=mspremier.BuildQualityChecks

它完美地工作。这就是你想要的

答案 1 :(得分:1)

默认情况下,VsTest任务会将代码覆盖率结果直接发布到“构建摘要”页面。因此,我们不需要“发布代码覆盖率结果”任务来发布覆盖率结果。只需确保在VsTest任务中选择了“启用代码覆盖率”部分即可。

>>另外(可能是一个完全独立的问题),我想知道-我可以添加“质量门”来表示覆盖率是否低于80%,然后构建失败吗?

在当前的VSTS中,如果构建与配置的%值不匹配,则无法设置“ Quality Gate”来设置构建失败。还有其他社区也有此要求,并已提交用户声音。请随时添加您的评论或通过以下链接对其进行投票: https://visualstudio.uservoice.com/forums/330519-visual-studio-team-services/suggestions/3817520-fail-build-on-insufficient-code-coverage