You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将dotcover.exe生成的覆盖率报告转为Cobertura/OpenClover XML并集成到Jenkins

把dotCover报告转成Cobertura/OpenClover格式集成到Jenkins

我来帮你搞定这个转换的事儿,其实dotCover本身就支持直接导出成Cobertura格式的XML,不用额外找第三方工具,步骤很清晰:

方法一:直接用dotCover CLI生成/转换Cobertura格式

不管你已经有了现成的dotCover快照文件,还是想在测试阶段直接输出Cobertura报告,都能用命令行搞定:

1. 转换已有的dotCover快照(.dcvr文件)

如果你已经通过dotCover生成了.dcvr格式的覆盖率快照,只需要执行dotcover report命令就能转成Cobertura XML:

dotcover report /Source:"D:\builds\coverage.dcvr" /Output:"D:\builds\cobertura-coverage.xml" /ReportType:Cobertura

参数说明:

  • /Source:填你已有的dotCover快照文件的绝对路径
  • /Output:指定转换后Cobertura XML的输出路径
  • /ReportType:Cobertura:明确告诉dotCover要生成Cobertura格式的报告

2. 测试时直接生成Cobertura报告

如果还没生成快照,可以把测试执行和覆盖率报告生成合并成一步,比如配合NUnit或xUnit:

dotcover cover /TargetExecutable:"C:\tools\nunit3-console.exe" /TargetArguments:"D:\tests\MyTestAssembly.dll" /Output:"D:\builds\coverage.dcvr" /ReportType:Cobertura /ReportOutput:"D:\builds\cobertura-coverage.xml"

这样跑完测试后,会同时生成dotCover快照和Cobertura XML文件,一步到位。

方法二:转换为OpenClover格式(可选)

dotCover本身不直接支持导出OpenClover,但如果你的Jenkins环境依赖这个格式,可以先转成Cobertura,再用转换工具处理。比如用Java的cobertura-to-clover工具:

java -jar cobertura-to-clover.jar D:\builds\cobertura-coverage.xml D:\builds\clover-coverage.xml

不过这里要提一句:Jenkins的Cobertura插件已经能完美解析Cobertura格式的报告,展示覆盖率图表、历史趋势这些功能都很全,大部分场景下没必要转OpenClover,直接用Cobertura格式更省心。

最后:Jenkins集成小提示

转换好XML文件后,在Jenkins里做这两步就能展示覆盖率了:

  • 安装Jenkins的「Cobertura Plugin」插件
  • 在构建后步骤里添加「Publish Cobertura Coverage Report」,指定你生成的Cobertura XML文件路径,保存配置后下次构建就能看到覆盖率数据了。

内容的提问来源于stack exchange,提问作者irusul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 06:32:29