idea 测试覆盖率

本文介绍了如何在IntelliJ IDEA中编写和测试Java类,包括创建Add类及其Test类,以及如何利用IDEA自带功能和JaCoCo插件生成测试报告和代码覆盖率。通过设置JaCoCo插件并执行相关Maven命令,可以查看详细的覆盖率图表。
摘要由CSDN通过智能技术生成

1、编写类

package com.jacoco;

/**
 * @author ybwei
 * @Description
 * @date 2021/8/31 13:27
 **/
public class Add {
    public int add(int a, int b) {
        if (a == 20) {
            return 20;
        }
        return a + b;
    }
}

自行生成Test类快捷键,ctrl+shift+T或者在类中右键,选中Go To-->选择Test,弹窗中选中需要测试的方法,直接生成。

package com.jacoco;

import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertEquals;

@Slf4j
public class AddTest {

    private static Add add=new Add();

    @BeforeEach
    void setUp() {
        log.info("setUp");
    }

    @AfterEach
    void tearDown() {
        log.info("tearDown");
    }

    @Test
    void add() {
        int sum = add.add(1, 2);
        assertEquals(3, sum);
    }
}

2、idea自带插件

注意: 测试的包名和开发的包名必须一致,否则会没有测试报告(报No coverage in ‘all classes in scope‘ in Intellij)。

执行Run 'AddTest' with Coverage

生成覆盖率

 

 3、jacoco插件

pom.xml

<build>
    <plugins>
        <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.8.7</version>
            <configuration>
                <destFile>target/test-coverage/jacoco-unit.exec</destFile>
                <dataFile>target/test-coverage/jacoco-unit.exec</dataFile>
            </configuration>
            <executions>
                <execution>
                    <id>default-prepare-agent</id>
                    <goals>
                        <goal>prepare-agent</goal>
                    </goals>
                </execution>
                <execution>
                    <id>jacoco-site</id>
                    <phase>test</phase>
                    <goals>
                        <goal>report</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

执行命令

mvn clean test -Dtest=com.jacoco.AddTest -Dmaven.test.failure.ignore=true verify

执行完成,在target/site/jacoco/index.html即可查看覆盖率图表。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值