单元测试JUnit

今天总结一下java中常用的一种测试方法–单元测试JUnit。单元测试针的对象是类中的方法,被测试的方法必须满足如下几个条件:
1. 无返回值
2. 无参数
3. public修饰
下面给出一个例子:

import org.junit.Test;
public class Test2 {
    @Test
    public void sum() {
        int a=9;
        int b=8;
        int sum = a+b;
    }
}

代码很简单,功能是计算两个整数的和,要测试这个函数可以直接在主函数里调用它,也可以采用单元测试的方法测试,这个方法的上面有@Test语句,它的作用是表示这个方法是测试方法,这里需要导入相应的类,eclipse需要下载并导入junit.jar包,myeclipse自带相应的包。测试的时候只需要选中方法名,单击鼠标右键,选择Run as下的单元测试即可,下面是测试的结果:
单元测试1
单元测试窗口在下发,里面有一个绿长条,这个表示当前测试的方法没有任何问题,如果它是深红色的则表示方法测试不通过。我们在代码里加一条输出语句:

import org.junit.Test;
public class Test2 {
    @Test
    public void sum() {
        int a=9;
        int b=8;
        int sum = a+b;
        System.out.println(sum);
    }
}

再进行一下单元测试,结果如下:
2
发现方法通过测试,并且在控制台输出了计算结果。这是对一个方法进行测试,也可以对多个方法进行测试,下面是代码:

import org.junit.Test;
public class Test2 {
    @Test
    public void sum() {
        int a=9;
        int b=8;
        int sum = a+b;
        System.out.println(sum);
    }
    @Test
    public void sum2() {
        int a=10;
        System.out.println(2*a);
    }
    @Test
    public void sum3() {
        int b=10;
        System.out.println(3*b);
    }
}

这里谢了三个方法,功能很简单,要对这三个方法进行单元测试,只需在代码中任意地方单击鼠标右键,然后选择run as下的单元测试即可,下面是测试结果:
3
结果是三个方法都测试通过,而且都在控制台输出了结果,这样比一个一个去调用测试方便的多。如果现在我只想对sum和sum3这两个方法进行测试,而不想对sum2测试该怎么做呢,很简答,只需把方法上的@Test换成@Ignore就可以了,这里不再叙述。除了@Test和@Ignore外,还有@After和@Before这两个语句,他俩的作用是分别在方法测试的前后执行对应的方法,下面是代码:

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class Test2 {
    @After
    public void testAfter() {
        System.out.println("after");
    }
    @Test
    public void sum() {
        int a=9;
        int b=8;
        int sum = a+b;
        System.out.println(sum);
    }
    @Before
    public void testBefore() {
        System.out.println("before");
    }
}

下面是结果:
4
会发现在执行sum方法前执行了testAfter()方法,在sum执行之后执行了testBefore()方法,这就是@After和@Before的作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值