java+调用jacoco_java操作jacoco

使用jacoco来统计代码覆盖率时,用java来清空覆盖率数据或者输出覆盖率数据

一、相关包

1,下载jacocoagent.jar包

maven:https://mvnrepository.com/artifact/org.jacoco/org.jacoco.agent

jar包:

http://central.maven.org/maven2/org/jacoco/org.jacoco.agent/0.7.7.201606060606/org.jacoco.agent-0.7.7.201606060606.jar

该包不需要放在代码里,放在机器某个位置就行

2,下载org.jacoco.core.jar包,并放到代码里

如果是maven:

https://mvnrepository.com/artifact/org.jacoco/org.jacoco.core

org.jacocogroupId>

org.jacoco.coreartifactId>

0.7.7.201606060606version>

dependency>

jar包下载:

http://central.maven.org/maven2/org/jacoco/org.jacoco.core/0.7.7.201606060606/org.jacoco.core-0.7.7.201606060606.jar

该包用于操作覆盖率数据

二、使用

1、运行程序

运行程序时,jvm options加上

-javaagent:/data/services/tomcat_base/testcov.bam.yy.com/lib/jacocoagent.jar=output=tcpserver,address=127.0.0.1,port=6300

其中地址address为当前机器的Ip,port为操作覆盖率数据的端口,可自行定义,默认为6300

至于如果加jvm options请自行google

官方api

http://www.eclemma.org/jacoco/trunk/doc/api/

2、java操作覆盖率数据

清空覆盖率数据

ExecDumpClient client = new ExecDumpClient();

client.setReset(true);

client.setDump(false);

//目标机器的ip和端口,对应着运行程序时javaagent参数里的ip和端口

client.dump(ip, port);

输出覆盖率文件jacoco.exec

ExecDumpClient client = new ExecDumpClient();

client.setDump(true);

ExecFileLoader file = client.dump("183.60.218.133", 6999);

file.save(new File("d:jacoco.exec"), false);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值