首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

jacoco关于Java代码覆盖率你不得不会的基操!

0 前言

全是干货的技术殿堂Java-Interview-Tutorialhttps://github.com/Wasabi1234/Java-Interview-Tutorialjacoco是一个开源的覆盖率工具,通过插桩方式来记录代码执行轨迹.ant是构建工具,内置任务和可选任务组成的.Ant运行时需要一个XML文件(构建文件)。1 覆盖率软件对比

2 流程

配置jacocoagent参数,启动服务

生成 jacoco.exec

ant 构建生成覆盖率报告

3 启动jcocoagent

javaagent:javaagent是JDK 1.5以后引入的,也可以叫做Java代理.后面跟的参数是jcocoagent的jar包地址.

includes:包含在执行分析中的类名列表,*表示全部

output:表示使用tcpserver代理侦听由address和port属性指定的TCP端口,并将执行的数据写入此TCP连接,从而实现不停止项目运行实时生成代码覆盖率报告

port:开启的端口号

address: 开启的ip地址,本地写127.0.0.1jar:运行服务的jar包地址java -javaagent:/fs/jacocoagent.jar=includes=*,output=tcpserver,port=8888,address=127.0.0.14 生成报告

ant dump

生成"jacoco.exec"

ant report

5 打开"index.html"报告,展示类的覆盖率文件

什么方法级别覆盖率你都还不满足,想看到底哪行代码覆盖到了?那你得知道这有多坑了,最基本的配置是做不到的,我们还需要配置自己的 class 文件路径和源码路径!

注意要具体到 class 目录和 java 目录!,即 com 目录的上一级目录,就能完美展示源码的覆盖率情况了

绿色的为行覆盖充分

红色的为未覆盖的行

红色菱形的为分支全部未覆盖

黄色菱形的为分支部分覆盖

绿色菱形为分支完全覆盖

总结

基操到此结束!入门完毕,开始愉快的高级玩耍与自行适配优化吧~

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200317A0HJPB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券