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

VSTS - how to get Code Coverage results

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

在"VsTest - testAssemblies"任务中,我勾选了"Enable Code Coverage"选项,如下图:

我添加了一个发布代码覆盖任务,它要求一个叫做 "Summary File" 的东西 - 见下文:

我不知道如何设置这个选项?有人做过吗?

我似乎在没有配置的情况下在构建结果中发布了测试结果,见下文:

我希望构建结果中的“代码覆盖率”选项卡也一样,目前它是空白的:

此外(可能是一个完全独立的问题),我想知道 - 我可以添加一个 "Quality Gate" 来说明如果覆盖率低于 80% 那么构建失败吗?

感谢您提前提出任何建议 - 知道自己想要什么,但不确定如何实现它!

默认情况下,VsTest 任务会将代码覆盖率结果直接发布到构建摘要页面。所以我们不需要 Publish Code Coverage result 任务来发布覆盖率结果。只需确保您在 VsTest 任务中选择了 "Code Coverage enable" 部分。

>> 另外(可能是一个完全独立的问题),我想知道 - 我可以添加一个 "Quality Gate" 来说明如果覆盖率低于 80% 那么构建失败吗?

在当前的 VSTS 中,我们无法设置 "Quality Gate" 来设置构建失败,如果它与配置的 % 值不匹配。还有其他社区也有这个需求,也有提交用户的声音。请随时添加您的评论或从下方投票 link: https://visualstudio.uservoice.com/forums/330519-visual-studio-team-services/suggestions/3817520-fail-build-on-insufficient-code-coverage

万岁! 有一个解决方案。 :)

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

这是 link: https://marketplace.visualstudio.com/items?itemName=mspremier.BuildQualityChecks

效果很好。这就是你想要的