前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java代码覆盖工具Jacoco

java代码覆盖工具Jacoco

作者头像
苦叶子
发布2019-08-05 19:40:06
1.8K0
发布2019-08-05 19:40:06
举报
文章被收录于专栏:开源优测开源优测
什么是Jacoco

Jacoco是一个开源的覆盖率工具。Jacoco可以嵌入到Ant 、Maven中,并提供了EclEmma Eclipse插件,也可以使用JavaAgent技术监控Java程序。很多第三方的工具提供了对Jacoco的集成,如sonar、Jenkins等。

官网地址:http://www.eclemma.org/jacoco/

Jacoco集成方式

Jacoco团队提供了如下的一些集成工具的支持: Java API http://www.eclemma.org/jacoco/trunk/doc/api/index.html Command Line http://www.eclemma.org/jacoco/trunk/doc/agent.html Apache Ant http://www.eclemma.org/jacoco/trunk/doc/ant.html Apache Maven http://www.eclemma.org/jacoco/trunk/doc/maven.html Eclipse EclDmma Plugin http://www.eclemma.org/

Jacoco下载地址

官方下载地址:https://www.eclemma.org/jacoco/index.html

On-the-fly注入模式

On-the-fly 方式无须入侵应用启动脚本,只需在 JVM 中通过 -javaagent 参数指定 jar 文件启动 Instrumentation 的代理程序,代理程序在通过 Class Loader 装载一个 class 前判断是否需要注入 class 文件,将统计代码插入 class ,测试覆盖率分析就可以在 JVM 执行测试的过程中完成。

其原理如下图所示

Jacoco与jenkins集成

安装jacoco插件

Jenkins中构建参数 关键maven参数:

代码语言:javascript
复制

org.jacoco:jacoco-maven-plugin:prepare-agent:命令行引用jacoco-maven-plugin插件,减少对开发源码的依赖。 -Dmaven.test.skip=false:启用代码中的单元测试,开发代码中一般默认是关闭的。 -Dmaven.test.failure.ignore=true:忽略失败的单元测试用例继续执行。

配置jacoco插件 在“Addpost-build action”中选择“Reccord Jacoco coverage report” 配置文件路径:

Path to exec files :代码覆盖率统计文件位置; Path to class directorie:classes文件位置; Path to source directories:源码文件位置; 根据需要填写覆盖率要求;

Jacoco覆盖率报告

高效的交流圈子知识星球:开源优测

在公众号里回复一下关键字获取对应的系列文章

物联网

appium

大数据测试

RobotFramework

Python

自动驾驶

jmeter

selenium

jenkins

接口测试

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源优测 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Jacoco与jenkins集成
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档