Java Junit单元测试

本文详细介绍了如何在Java中使用JUnit进行白盒测试,包括创建测试类、编写测试方法、添加@Test注解、设置断言等步骤,并通过Calculator类实例演示了实际应用。特别关注了如何使用@Before和@After注解进行测试前后的初始化和清理工作。
摘要由CSDN通过智能技术生成

Junit单元测试

(白盒测试)

测试分类:

1、黑盒测试

不需要写代码,给输入值,看程序是否能够输出期望的值

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IiSXlHeo-1616722449201)(C:\Users\高思语\AppData\Roaming\Typora\typora-user-images\image-20210304215622322.png)]

2、白盒测试

需要写代码,关注程序具体的执行流程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TCO1Bt2u-1616722449203)(C:\Users\高思语\AppData\Roaming\Typora\typora-user-images\image-20210304215545087.png)]

Junit使用:白盒测试

步骤:

​ 1、定义一个测试类(测试用例)

​ 建议:

​ 测试类名:被测试的类名Test CalculatorTest

​ 包名:XXX.XXX.XX.Test cn.itcast.test

​ 2、定义测试方法:可以独立运行

​ 建议:

​ 方法名:test测试的方法名 testAdd()

​ 返回值:void

​ 参数列表:空差

​ 3、给方法加@Test

​ 4、导入Junit依赖环境

判定结果:

​ 红色:失败

​ 绿色:成功

​ 一般我们会使用断言操作来处理结果

​ Assert.assertEquals(期望的结果,运算的结果);

public class Calculator {
    /*
    加法
    @param a
    @param b
    @return
    */
    public int add(int a,int b){
        return a+b;
    }
    /*
    减法
    @param a
    @param b
    @return
    */
    public int sub(int a,int b){
        return a-b;
    }
}
public class CalculatorTest {
    //测试add方法
    @Test
    public void testAdd(){
        //System.out.println("我被执行了");
        //1、创建计算器对象
        Calculator c = new Calculator();
        //2、调用add方法
        int result = c.add(1,2);
        //System.out.println(result);

        //3、断言   我断言这个结果是3(将+换成-测试)
        Assert.assertEquals(3,result);
        /*
        java.lang.AssertionError:
        Expected :3
        Actual   :-1
        */
    }
    @Test
    public void testSub(){
        //System.out.println("我被执行了");
        //1、创建计算器对象
        Calculator c = new Calculator();
        //2、调用add方法
        int result = c.sub(1,2);
        //System.out.println(result);
        //3、断言
        Assert.assertEquals(-1,result);
    }
}

补充:

@Before:

修饰符的方法会在测试方法执行之前被自动执行

@After:

修饰符的方法会在测试方法执行之后被自动执行

public class CalculatorTest {

    /*
    初始化方法:
    用于资源申请,所有测试方法在执行之前都会先执行该方法
    */
    @Before
    public void init(){
        System.out.println("init...");
    }

    /*
    释放资源方法:
    在所有方法执行完之后,会自动执行该方法
    */
    @After
    public void close(){
        System.out.println("close...");
    }

    //测试add方法
    @Test
    public void testAdd(){
        //System.out.println("我被执行了");
        System.out.println("testAdd...");
        //1、创建计算器对象
        Calculator c = new Calculator();
        //2、调用add方法
        int result = c.add(1,2);
        //System.out.println(result);

        //3、断言   我断言这个结果是3(将+换成-测试)
        Assert.assertEquals(3,result);
        /*
        java.lang.AssertionError:
        Expected :3
        Actual   :-1
        */
    }
    @Test
    public void testSub(){
        //System.out.println("我被执行了");
        System.out.println("testSub...");
        //1、创建计算器对象
        Calculator c = new Calculator();
        //2、调用add方法
        int result = c.sub(1,2);
        //System.out.println(result);
        //3、断言
        Assert.assertEquals(-1,result);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值