【问题标题】:VSTS - how to get Code Coverage resultsVSTS - 如何获得代码覆盖率结果
【发布时间】:2019-01-29 15:56:32
【问题描述】:

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

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

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

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

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

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

另外(可能是一个完全独立的问题),我想知道 - 我可以添加一个“质量门”来说明如果覆盖率低于 80% 则构建失败?

提前感谢您的任何建议 - 这是一个知道我想要什么但不知道如何实现它的案例!

【问题讨论】:

  • “摘要文件”是必填字段,你给了什么值?
  • 我意识到 :) 我没有给出值...因为我不知道该输入什么 :(
  • 如果您没有在此字段中输入任何内容,您是如何设法运行构建的?
  • 如果您希望 HTML 报告显示在“代码覆盖率”选项卡上,this answer 可能会有所帮助,更不用说提到的封面工具允许覆盖率必须满足的阈值。

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


【解决方案1】:

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

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

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

完美运行。这就是你想要的

【讨论】:

    【解决方案2】:

    默认情况下,VsTest 任务会直接将 Code Coverage 结果发布到 Build Summary 页面。所以我们不需要发布代码覆盖结果任务来发布覆盖结果。只需确保您在 VsTest 任务中选择了“代码覆盖启用”部分。

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

    在当前的 VSTS 中,如果与配置的 % 值不匹配,我们无法设置“质量门”来设置构建失败。还有其他社区也有这个要求并提交了用户的声音。请随时添加您的 cmets 或从以下链接投票: https://visualstudio.uservoice.com/forums/330519-visual-studio-team-services/suggestions/3817520-fail-build-on-insufficient-code-coverage

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 2021-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多