Jacoco简介

8 篇文章 0 订阅
6 篇文章 0 订阅

两分钟带你了解Jacoco

从测试小白一跃成为Testng专家

Java代码覆盖率实现方式有哪些

Jacoco的出发点是为基于JVM运行的代码提供代码覆盖率统计,期望提供轻量级的、可伸缩的、文档较全的库文件来集成各类构建和开发工具。
Java代码覆盖率工具有几款开源工具,当实现Eclipse插件EclEmma时,他们都不方便集成,大部门只适用于一款工具(ant,命令行,IDE插件),没有相关文档说明如何集成到不同的上下文环境中。其中两款比较好用的是EMMA 和 Cobertura,不过这两款原作者都不再维护了,也不再支持最新的JVM了,主要由于缺乏回归测试,造成添加新特征比较困难。
特此,作者开始开发Jacoco来提供一款全新的基于JVM运行的代码覆盖率工具,为集成各种构建开发工具提供轻量级的、可伸缩的、文档全面的库文件,如ant构建工具、maven插件、EclEmma Eclipse 插件,还有很多其它的开源工具集成了Jacoco。
Jacoco的特征:

  • 覆盖率分析包括:指令覆盖(c0)、分支覆盖(c1)、代码行覆盖、方法覆盖、类覆盖和全复杂度;

  • 基于java字节码分析,所以可以脱离java源代码;

  • 通过on-the-fly指令集成java-agent,其它的集成场景比如可以通过api实现定制类加载;

  • 可以与基于JVM的应用程序平滑集成,如java application,OSGI框架,web容器和EJB服务器;

  • 可以兼容所有版本的java类;

  • 报告支持多种格式,如HTML、XML、CSV;

  • 可以随时通过远程协议和JMX控制agent dump覆盖率数据;

  • ant可以控制数据产生,生成结构化的报告;

  • maven插件可以在构建阶段收集覆盖率数据,生成报告;
    非功能特征:

  • 简单易用,可以和现有的构建工具和脚本集成;

  • 性能好,即便是大型项目,也之后占用较少的运行时间;

  • 轻量级实现,对外部库和代码的依赖非常少;

  • 全面的文档;

  • Java API集成示例

  • 基于junit的回归测试测试用例

https://www.jacoco.org/jacoco/trunk/doc/mission.html

更多精彩内容欢迎关注B站账号
在这里插入图片描述

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值