Junit单元测试

Junit单元测试

测试代码是否达到预期运行结果

测试方法主要有两类:黑盒测试及白盒测试。

  • 黑盒测试:不关注代码本身,只关注输入数据是否得到预期结果,无需编写代码。
  • 白盒测试:关注程序本身流程、逻辑,需要编写代码。

Junit的使用

步骤:

  1. 定义一个测试类。

    • 类名: <被测试的类名>Test
    • 测试类所在包:xxx.xxx.xxx.test
  2. 定义测试方法:

    • 无参、无返回值、独立运行。
    • 方法名:test<被测试的方法名>
    • 测试方法内部使用Assert(断言)判断被测试方法是否输出预期的值:如使用Assert.assertEquals(<expected>,<actual>)方法判断。
  3. 加上注解@Test,并引入Junit

使用断言的方法判断被测试程序是否符合预期时

  • 如果符合预期,下方控制台无任何输出结果,均出现绿色的
  • 如果不符合预期,下方控制台则会报错。

@Before

注解说明某一方法是:该测试类在所有测试方法执行前会自动执行的方法

通常用以资源申请、对象创建等前置操作。

@After

注解说明某一方法是:该测试类在所有测试方法执行后会自动执行的方法

通常用以资源释放等后置操作。

举例

创建一个用以计算的工具类Calculate

package run.heat.junit.tools;

public class Calculate {
    public int add(int a, int b) {
        return a + b;
    }

    public int sub(int a, int b) {
        return a - b;
    }
}

创建测试类

package run.heat.junit.test;

import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import run.heat.junit.tools.Calculate;

public class CalculateTest {
    Calculate calculate;

    @Before
    public void init() {
        calculate = new Calculate();
        System.out.println("init...");
    }

    @Test
    public void testAdd() {
        int a = 10, b = 5, rs = 15;
        Calculate calculate = new Calculate();
        System.out.println("add...");
        int add = calculate.add(a, b);
        Assert.assertEquals(rs, add);
    }

    @After
    public void destroy() {
        System.out.println("destroy...");
    }
}

运行结果:

init...
add...
destroy...
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值