zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Junit单元测试保姆级教程

2023-03-14 22:54:49 时间

Junit单元测试保姆级教程

测试分类

1.黑盒测试

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

2.白盒测试

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


junit的使用

1.定义一个测试类

建议:
  测试类名:被测试的类名Test    CalculatorTest
  包名: ***.***.**.test            cn.itcast.test

2.定义测试方法,可以独立运行

建议:
     方法名: test测试的方法名 testAdd()
     返回值: void
     参数列表: 空参

3.给方法加注解@Test 4.导入junit的依赖

选择第一个即可


判定结果

red : 失败 green : 成功


演示

代码:

package test;
import calculator.calculator;
import org.junit.Test;

public class calculatorTest {
    /*
     *  测试add方法
     */
    @Test
    public void testAdd()
    {
         calculator c=new calculator();
         //调用add方法
        int ret=c.add(1,2);
        System.out.println(ret);
    }
}

加上assert断言

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

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

测试:

package test;
import calculator.calculator;
import org.junit.Assert;
import org.junit.Test;

public class calculatorTest {
    /*
     *  测试add方法
     */
    @Test
    public void testAdd()
    {
         calculator c=new calculator();
         //调用add方法
        int ret=c.add(1,2);
        //断言 我断言这个结果是3
        Assert.assertEquals(3,ret);
    }
}

初始化方法

用于资源申请,所有测试方法在执行之前都会先执行该方法

释放资源方法

在所有测试方法执行完之后,都会执行该方法

注意

即使测试出现异常,初始化方法和释放资源方法也会被执行

演示:

package test;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class calculatorTest {

    @Before
    public void init()
    {
        System.out.println("初始化中....");
    }
       @After
       public void close()
       {
           System.out.println("释放资源中....");
       }

    @Test
    public void testAdd()
    {
        System.out.println("testADD方法执行中....");
    }
}