目标:
状态:完成
目前有很多插件实现了代码覆盖,但是,它们都使用了类似的配置、图表和内容。所以,如果我们有一个API插件,它可以为这些插件做最重复的工作,并提供一个统一的API,可以被其他插件和外部工具使用,那就更好了。
嵌入式工具
JaCoCo
其他插件作为扩展的代码覆盖API插件
Cobertura (Cobertura插件)
llvm-cov (llvm-cov插件)
这个API插件主要做这些事情:
根据用户的配置找到覆盖率报告。
使用适配器将报告转换为我们的标准格式。
解析标准格式报告,并聚合它们。
在图表中显示解析结果。
因此,我们可以通过简单地编写一个适配器来实现代码覆盖率发布,而这样的适配器只需要做一件事——将覆盖率报告转换为标准格式。该实现基于扩展点,因此可以在单独的插件中创建新的适配器。为了简化XML报告的转换,还有一个抽象层,它允许创建基于xslt的转换器。
架构图
原型基于Cobertura插件的数据模型。
集成其他Java代码覆盖工具。
卫生报告的支持。
汽车检测的支持。(必威国际有限公司詹金斯- 51366)
管道的支持。(必威国际有限公司詹金斯- 51363)
阈值的支持。(必威国际有限公司詹金斯- 51364)
现代化的报告。(必威国际有限公司詹金斯- 51386)
单元测试。(必威国际有限公司詹金斯- 51611)
添加源代码导航(必威国际有限公司詹金斯- 51988)
代码覆盖API和Cobertura插件之间的原型集成(必威国际有限公司詹金斯- 51424)
提供REST API以机器可读的格式检索覆盖率报告。(必威国际有限公司詹金斯- 51422)
提供REST API以机器可读的格式检索覆盖率趋势。(必威国际有限公司詹金斯- 51423)
将自动检测覆盖率发布逻辑移动到扩展点实现。(必威国际有限公司詹金斯- 51737)
重构配置页面,使其更加友好。(必威国际有限公司詹金斯- 51927)
增加对llvm-cov报告转换器的支持。(必威国际有限公司詹金斯- 51736)
支持在构建中合并报告(例如。在Pipeline中执行parallel()之后。(必威国际有限公司詹金斯- 51926)
使代码覆盖API插件更通用。(必威国际有限公司詹金斯- 52839)
将LLVM覆盖范围迁移到新的插件(必威国际有限公司詹金斯- 52630)
重构所采用的代码(必威国际有限公司詹金斯- 51733)
将当前REST API更改为标准格式。(必威国际有限公司詹金斯- 52628)
修复Bug。
编写文档。
释放插件。
实施更多的覆盖工具(必威国际有限公司詹金斯- 52467,必威国际有限公司詹金斯- 52469等。)
使UI可扩展(必威国际有限公司詹金斯- 51738)
提高性能(必威国际有限公司詹金斯- 52982)