azure-devops - 无法在 Azure DevOps 的“代码覆盖率”选项卡中呈现代码覆盖率 HTML 结果
问题描述
我在 Azure DevOps 中有一个经典的构建管道,它为 .Net Core 3.1 应用程序构建和运行测试。我正在使用运行 Windows Server 2019 操作系统的自托管构建代理
我的任务:
- 恢复 Nuget
- 在发布模式下构建解决方案
- 安装最新的 vstest.console.exe 工具
- 使用上述工具运行测试并生成 .coverage 文件
- 从 Nuget 安装 CodeCoverage.exe
- 将 .coverage 转换为 .xml 的 PowerShell 脚本
- 使用 ReportGenerator 任务生成 HTML 和 Cobertura (HTMLInline;HTMLChart;Cobertura)
- 使用步骤 7 中的 Cobertura.xml 将代码覆盖率结果发布到服务器,同时上传 HTML 报告文件夹
发布代码覆盖任务 HTML 报告目录由 ReportGenerator 任务生成。
构建运行摘要
构建发布的文件
代码覆盖率选项卡
问题:代码覆盖率选项卡不显示 HTML 报告
解决方案
这是Azure devops 上的一个已知问题。现在,我们只能下载报告,并使用 Visual Studio 打开它。
Azure devops 目前仅支持 .coverage 文件的下载链接。您看到的白页是 UI 故障。这种情况只应该呈现覆盖文件的下载链接。
此外,此问题已在此处链接的此早期建议票中提交:support vstest .coverage“代码覆盖率”构建结果选项卡
此功能请求已在 Roadmap 上,相信很快就会发布,您可以关注此线程以了解其最新反馈。
另外,我发现了一个类似的案例,我通过答案进行了测试,将代码覆盖率工具设置为 Cobertura,然后在 Azure DevOps 管道中得到代码覆盖率报告。
推荐阅读
- python - 如何呈现用户复选框,然后将列表保存到选中的复选框?
- vba - 如何在VBA中仅替换字符串起始行
- python - 尝试在 flat_map 中加载数据集时出现错误“TypeError:预期的 str、字节或 os.PathLike 对象,而不是张量”
- mongodb - Mongoose:从一堆文件中更新一个文件
- angular - 主页中的控制组件(Angular/Ionic)
- python - 我正在尝试使用 pysimplegui,但我无法重新运行窗口
- c - 为什么使用gets()函数的返回值会出现分段错误?
- node.js - 与 ECS 一起使用时,AWS ALB 返回一个空页面
- python - 在创建循环时给多个矩形(使用图形模块)不同的名称?
- java - java线程在调用rest模板后收到等待状态的响应后是否很快恢复运行状态?