一直以来,都没有好好的学习过junit4,对junit4也不是很了解,趁着工作中要用到,好好的学习了一下。
junit4用注解来简化测试用例的编写。下面介绍一下常用注解的用法。
@BeforeClass
针对所有测试,只执行一次,在所有方法之前执行,且方法必须为public static void。
@Before
初始化方法,在任何一个测试方法执行之前执行的代码,且每个测试方法执行时都会执行一次。
@Test(excepted=***.class,time=xxx)
测试方法,只用来修饰public void方法,且不能有任何参数。excepted表示用来测试期望异常,也叫异常测试;time用来测试函数执行时间。
@After
释放资源,在每个测试方法执行之后执行。该注释只用来修饰public void方法。
@AfterClass
针对所有测试,只执行一次,在所有方法执行完之后执行,且方法必须为public static void。
@Ignore
忽略的测试方法。
代码如下:
package com.aderson.junit4;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
public class TestJunit {
@BeforeClass
public static void beforeClass(){
System.out.println("before class");
}
@Before
public void before() {
System.out.println("before test method");
}
@Test(expected=NullPointerException.class)
public void test1(){
System.out.println("test1");
throw new NullPointerException();
}
@Test
public void test2() {
System.out.println("test2");
}
@Ignore("ignore method")
public void test3(){
System.out.println("ignore method");
}
@After
public void after() {
System.out.println("after test method");
}
@AfterClass
public static void afterClass(){
System.out.println("after class");
}
}
执行结果为:
before class
before test method
test1
after test method
before test method
test2
after test method
after class