码迷,mamicode.com
首页 > 其他好文 > 详细

单元测试JUnit

时间:2016-05-13 01:03:43      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:

今天总结一下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下的单元测试即可,下面是测试的结果:
技术分享
单元测试窗口在下发,里面有一个绿长条,这个表示当前测试的方法没有任何问题,如果它是深红色的则表示方法测试不通过。我们在代码里加一条输出语句:

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);
    }
}

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

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下的单元测试即可,下面是测试结果:
技术分享
结果是三个方法都测试通过,而且都在控制台输出了结果,这样比一个一个去调用测试方便的多。如果现在我只想对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");
    }
}

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

单元测试JUnit

标签:

原文地址:http://blog.csdn.net/u013189927/article/details/51346122

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!