jacoco入门_JaCoCo入门使用(基于Maven+TestNG)

参考链接:

* https://www.cnblogs.com/fnng/p/7923314.html

* https://www.jacoco.org/

* https://www.eclemma.org/jacoco/

* https://ningyu1.github.io/site/post/77-jenkins-sonarqube-jacoco-junit/

一、Jacoco简介:

1. JaCoCo是一个开源的覆盖率工具,针对的开发语言是java,其使用方法很灵活,可以嵌入到Ant、Maven中;可以作为Eclipse插件,可以使用其JavaAgent技术监控Java程序等等。

2. 很多第三方的工具提供了对JaCoCo的集成,如sonar、Jenkins等。

3. JaCoCo包含了多种尺度的覆盖率计数器

二、Maven工程安装Jacocco

只需要引入Jacoco的jar包即可

org.testng

testng

6.11

test

org.apache.maven.plugins

maven-surefire-plugin

2.18.1

org.jacoco

jacoco-maven-plugin

0.7.9

prepare-agent

report

prepare-package

report

org.apache.maven.plugins

maven-compiler-plugin

3.5.1

1.7

1.7

三、代码实例验证

1. 创建1个maven工程:

2. 创建被测试类:

public class Count {

public int add(int x, int y){

return x + y;

}

public int sub(int x, int y){

return x - y;

}

}

3. 创建测试类:

import org.testng.Assert;

import org.testng.annotations.Test;

public class CountTest {

@Test

public void testAdd(){

Count count = new Count();

int result = count.add(3,3);

Assert.assertEquals(result, 6);

}

}

四、执行测试代码

* 通过TestNG单元测试框架来运行测试用例,切换到jacocoTest项目根目录下,执行“mvn install”命令。

五、查看覆盖率报告

1. 切换到项目下的“\target\site\jacoco\”目录,打开index.html文件。

402a122ec85088ab97b67a9bc4f932db.png

2.覆盖率报告字段说明:

c05378e01f0a4e0ffde245e7f7082763.png

1. 类覆盖(classes):度量计算class类文件是否被执行

2. 方法覆盖(non-abstract methods):度量if和switch语句的分支覆盖情况,计算一个方法里面的。

3. 分支覆盖(Branches,C1coverage):包括所有的if和switch语句,这个度量计算一个方法里面的总分支数,确定执行和不执行的分支数量

4. 行覆盖(Lines):度量被测程序的每行代码是否被执行,判断标准行中是否至少有一个指令被执行。

5. 指令级覆盖(Instructions,C0coverage):计数单元是单个java二进制代码指令,二进制代码指令的覆盖率

6. 圈复杂度(CyclomaticComplexity)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值