作为 CI 构建过程的一部分,我正在使用 OpenCover(和 ReportGenerator)来检查我的代码覆盖率。
如果覆盖率不符合给定阈值,是否有可能让 OpenCover 使我的构建失败?
我环顾四周,但找不到任何方法来实现这一目标。我可以查看生成的报告吗?
编辑:对不起,我应该提到我正在使用 Nant 构建脚本。
作为 CI 构建过程的一部分,我正在使用 OpenCover(和 ReportGenerator)来检查我的代码覆盖率。
如果覆盖率不符合给定阈值,是否有可能让 OpenCover 使我的构建失败?
我环顾四周,但找不到任何方法来实现这一目标。我可以查看生成的报告吗?
编辑:对不起,我应该提到我正在使用 Nant 构建脚本。
由于您没有提到您拥有什么 CI 服务器或它用于编写脚本的内容,我将使用nant作为示例以一般方式做出回应。
如果 CI 服务器能够针对 XML 文档执行 XPath 查询,例如在 nant 中,您可以使用xmlpeek 任务。然后您可以使用以下查询来获取序列点的数量
count(//SequencePoint)
以及此查询以获取访问的序列点的数量
count(//SequencePoint[@vc!='0'])
并且从这两个数字中您可以得出一个百分比,然后您可以根据该百分比使构建失败,例如在 nant 中您可以使用失败任务。