天天看点

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

通过java方式安装jenkins

jenkins可选插件为空的解决方式或jenkins不能联网

需要安装Git plugin和JaCoCo plugin

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

spring-petclinic是一个经典的spring boot项目,这里我们也选择该项目来做单元测试并统计测试覆盖率。项目地址如下:https://github.com/spring-projects/spring-petclinic。

在jenkins里选择New Item链接

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

进入新建任务页面如下

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

输入spring-petclinic-uttest,选择“构建一个maven项目”,点“OK”按钮

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

保留默认值

Repository URL输入https://github.com/spring-projects/spring-petclinic.git

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

Goals and options 文本框输入 “clean verify”。

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

点击 Add post-build-Actions下拉选择框,选择“Record JaCoCo coverage report”条目

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

保持默认选项,最后点保存按钮即可

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

根据网络情况和本任务是否首次执行,该任务可能执行时间比较长,且容易中断报错,我这次是在阿里云主机上新搭的jenkins,一共执行了4次,才成功如下图

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

点Coverage Trend 链接,右下方显示 JaCoCo Coverage Trend 如下图

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

继续点击 JaCoCo Coverage Trend 区域任意位置,显示单元测试覆盖率报告如下图

使用jenkins的jacoco插件快速实现统计单元测试覆盖率

本文通过具体一个实例讲解了如何利用jenkins触发单元测试执行,并使用jacoco插件来统计单元测试用例覆盖率。