我正在我的 Azure DevOps 版本中使用ReportGenerator任务来生成代码覆盖率报告。问题在于生成的报告为空。
在运行单元测试的 VsTest 任务中,我已经选中了启用代码覆盖率选项。正确生成了。 coverage 文件,并且所有单元测试都已成功运行。但是,生成的代码覆盖率报告显示任何单元测试均未覆盖任何代码。
这是我的代码覆盖范围报告生成器任务的屏幕截图。
这是代码覆盖率报告的输出。
以下是该任务的 Azure DevOps 日志文件的屏幕快照,显示该任务已正确执行且没有任何错误。
有趣的是,日志确实显示以下内容
Analyzing 0 classes
这是因为 ReportGenerator 无法找到程序集/类吗?我尝试为源目录指定一个值,但这没有什么区别。
为什么代码覆盖率报告没有显示代码覆盖率?
答案 0 :(得分:1)
ReportGenerator无法处理 .coverage 文件。 您可以在此处找到受支持的格式:https://github.com/danielpalme/ReportGenerator#supported-input-and-output-file-formats
您可以使用OpenCover或coverlet之类的工具以 ReportGenerator 能够解析的格式生成一份覆盖率报告。 或者,您可以转换 .coverage 文件格式。在这里,您将说明如何完成此操作:https://github.com/danielpalme/ReportGenerator/wiki/Visual-Studio-Coverage-Tools