我在jenkins中使用cobertura插件进行代码覆盖。 我想在每个报表的基础上更改项目覆盖率摘要中的名称列的值。
有没有办法改变这个。我想在那边给我的项目名称。
答案 0 :(得分:4)
这是插件的一个分支,它可以满足您的需求(项目名称代替" cobertura覆盖率报告")。
https://github.com/andytompkins/cobertura-plugin
现在它只使用项目名称。我想这可能成为一个可配置的项目? 如果需要其他东西,我会很乐意继续努力,甚至可能以上游将它们带走的方式打包更改。
更改的相关代码位于CoverageResult.java中。添加了一种方法:
public String getJobName() {
AbstractProject job = owner.getProject();
return job.getName();
}
在index.jelly中将引用从it.name更改为it.getJobName()。
<td>${it.getJobName()}</td>
在每个报告的基础上制作它会有点困难。报告本身没有名称或标题字段 - 这个插件不控制格式,它只是读取它。
我也在使用一个使用业力和业力覆盖的javascript项目。目前正在生产jenkins中运行forked插件。
编辑: 在我的仓库中的分支use-filename-for-reportname中,您将找到一个版本的插件,它将使用coverage文件的名称作为报告名称。
答案 1 :(得分:2)
我建议前往plugin page,联系其中一位维护人员:
斯蒂芬康纳利(id:stephenconnolly)
Manuel Carrasco Monino(身份证号码:manuel_carrasco)
Seiji Sogabe(id:ssogabe)
并问他们如何做到这一点 一旦你有解决方案,在这里分享,因为其他人(像我一样)可能也想要这个功能......
我希望这会有所帮助。
答案 2 :(得分:2)
您可以转到plugin Github page,并为自己克隆源代码的副本。
快速搜索显示您要更改的行可能位于此文件中:
src/main/resources/hudson/plugins/cobertura/Messages.properties
CoberturaCoverageParser.name=Cobertura Coverage Report
将该行更改为您想要的内容。保存并重建插件。有big tutorial on how to build Jenkins plugins here。
答案 3 :(得分:0)
我只在Maven中使用过一次Cobertura,你可以在xml和html输出之间进行选择,这是在你在项目的pom.xml文件中定义的outputDirectory中创建的。
假设逻辑相同,您可以转到生成的xml或html文件,只需搜索字符串“Cobertura Coverage Report”并在那里进行更改。
如果改变它的目的是发送给某人(例如:向老板报告),这将有效。
据我所知,现在不可能改变一些配置并有明确的解决方案。
我建议的是,open a issue在插件页面,甚至是GitHub的OpenSource存储库,并提出增强功能,甚至可以自己做出贡献。
如果这不能使他们移动我建议尝试联系plugin page的维护人员。
您正在寻找的解决方案不可用,Cobertura不支持它。 Cobertura插件将始终显示相同的报告结构,其中整体报告摘要将始终具有值“cobertura覆盖率报告”,非常相似的Emma coverage插件在同一位置具有字符串值“所有包”,除非您编辑对于源代码或要求增强,抱歉。
如果您选择更改源代码,它确实是Slav建议的值:
src/main/resources/hudson/plugins/cobertura/Messages.properties
CoberturaCoverageParser.name=Cobertura Coverage Report
但在这种情况下,您必须为每个项目创建并安装一个新插件。
所以在底线,我不会朝那个方向前进。 另一方面,我建议使用Cobertura或Karma(在Daniel Schaffer的案例中)来生成html。这个可以通过基本的html和css技巧轻松改变,以获得您想要的外观和感觉。