标签:
今天总结一下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的作用。
标签:
原文地址:http://blog.csdn.net/u013189927/article/details/51346122