有没有办法将OpenCover生成的代码覆盖率指标检索回Jenkins?

时间:2012-09-11 12:37:46

标签: .net continuous-integration jenkins sonarqube opencover

我正在开发一个使用Jenkins作为CI服务器的.NET项目。服务器正在按预期工作,但现在我正试图在低代码覆盖率的情况下发出警报。

我正在尝试的方法是使用Sonar来执行NUnitOpenCover,但我需要链接来自{{strong>代码覆盖率指标{1}}返回Sonar,这就是问题所在的位置。

AFAIK从Jenkins生成的报告( coverage-report.xml )不能从OpenCover识别出来,所以我要做的就是制作他们通过xsl文件进行交谈,该文件将( coverage-report.xml )转换为Jenkins具有可理解插件的( emma-report.xml )。

虽然我不知道这是最好的方法。 更好的方法非常受欢迎;)我遇到了从OpenCover获取Jenkins指标的问题(block coverage需要此指标)。

我设法将Emmaclass, %method, %所需的所有其他指标从line, %转换为OpenCover,但我不确定是否可以从报告中获取Emma

任何人都可以告诉我是否有可能或者是否有更好的方法来实现我正在尝试做的事情(也就是说,当代码覆盖率低于某个特定时,make block, %会发出构建警报百分比)吗

提前致谢! :)

2 个答案:

答案 0 :(得分:3)

现在看来有一个工具可以将OpenCover报告转换为Cobertura XML https://github.com/danielpalme/OpenCoverToCoberturaConverter/tree/master/OpenCoverToCoberturaConverter

讨论这个问题的主题。

http://reportgenerator.codeplex.com/discussions/398788

答案 1 :(得分:1)

如果您从声纳gallio插件(来自sonar C# ecosystem)运行OpenCover,那么获得低代码覆盖率警报的简单解决方案可能是声纳build breaker plugin。 当覆盖率低于警报阈值时,您将获得破坏的构建。此解决方案不允许获取jenkins中的图形或趋势,但如果您使用声纳,则会在声纳仪表板中显示所有内容。 希望它有所帮助

相关问题