如何在Jenkins中基于LCOV报告展示代码覆盖率趋势?
当然可行!
完全可以通过Jenkins官方的LCOV Plugin来实现你的需求,它完美兼容istanbul/nyc生成的lcov.info文件,能帮你展示覆盖率趋势和各类覆盖率指标。下面是具体的配置步骤:
第一步:安装LCOV插件
进入Jenkins的「系统管理」→「插件管理」,在可选插件里搜索「LCOV Plugin」并安装,安装完成后重启Jenkins生效。第二步:确保构建过程生成正确的lcov.info文件
在你的项目构建脚本里,保留生成LCOV报告的命令,比如用nyc的话:nyc --reporter=lcov npm test这条命令会在项目目录下的
coverage文件夹里生成lcov.info和HTML报告,确认文件路径正确,后续Jenkins需要读取这个文件。第三步:配置构建后动作
进入项目的「配置」页面,拉到「构建后操作」区域,点击「增加构建后操作步骤」,选择「Publish LCOV Coverage Report」:- 在「LCOV report pattern」里填写
lcov.info的路径,比如**/coverage/lcov.info(适配多目录场景); - 你还可以根据需求设置覆盖率阈值,比如当语句覆盖率低于某个值时标记构建失败,或者设置趋势告警。
- 在「LCOV report pattern」里填写
第四步:查看覆盖率数据与趋势
配置完成后触发一次构建,构建成功后,你就能在项目首页看到:- 实时的语句、分支、函数、行覆盖率数值;
- 覆盖率的历史趋势图,直观看到每次构建的覆盖率升降变化;
- 点击覆盖率数值还能进入详情页面,查看具体文件的覆盖情况,和nyc生成的HTML报告联动。
如果你的项目是多模块结构,还可以通过合并多个lcov.info文件的方式,生成统一的覆盖率报告,比如用lcov-merge工具合并后再让Jenkins读取。
内容的提问来源于stack exchange,提问作者rozza
相关产品推荐
相关产品推荐

