Java开发者测试:Junit5

Java开发者测试

实际代码编写中所用到的单元测试框架基本是Junit结合Mockito使用

Junit

spring自带的单元测试框架,涵盖了大部分功能

通过@Test注解即可直接生成测试用例

@Test
public void calTest(){
    Assert.assertEquals(junit.cal(1,2),3);
}

@BeforeAll
表明在所有测试方法执行之前执行的方法,且只执行一次

@AfterAll
表明在所有测试方法执行之后执行的方法,且只执行一次

@BeforeEach
表明在每个测试方法执行之前都会执行的方法

@AfterEach
表明在每个测试方法执行之后都会执行的方法

class JunitTest {
    private Junit junit = new Junit();

    @Test
    public void calTest(){
        Assert.assertEquals(junit.cal(1,2),3);
        System.out.println("exeuting...");
    }

    @BeforeEach
    public void beforeExe(){
        System.out.println("before executing...");
    }

    @AfterEach
    public void afterExe(){
        System.out.println("after executing...");
    }

    @BeforeEach
    public void beforeEachExe(){
        System.out.println("before each executing...");
    }

    @AfterEach
    public void afterEachExe(){
        System.out.println("after each executing...");
    }
}
//超过指定时间报错
@Timeout(value = n,unit = TimeUnit....)

在这里插入图片描述

断言

junit中最为关键的部分,用来验证测试代码的预期结果

assertEquals

判断两个对象或两个原始类型是否相等

assertNotEquals

判断两个对象或两个原始类型是否不相等

assertSame

判断两个对象引用是否指向同一个对象

assertNotSame

判断两个对象引用是否指向不同的对象

assertTrue

判断给定的布尔值是否为 true

assertFalse

判断给定的布尔值是否为 false

assertNull

判断给定的对象引用是否为 null

assertNotNull

判断给定的对象引用是否不为 null

异常校验

@Test
public void exceptionTest(){
    Assert.assertThrows("no exception",Exception.class,() -> {
        junit.divide(1,0);
    });
    System.out.println("exception");
}

前置条件

如果不满足条件无法继续

Assumptions.assumeTrue(条件);

参数化测试

@ParameterizedTest //定义参数化测试
@NullSource //允许参数为null
@EmptySource //允许参数集合为空
@ValueSource(类型 = {参数1,参数2}) //一个数组
测试方法...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值