JUnit4中的 Annotation(注解、注释)

时间:2021-08-28 16:29:56

Unit4中的Annotation(注解、注释)
 
JUnit4
使用 Java 5中的注解(annotation),以下是JUnit4常用的几个annotation介绍
@Before
:初始化方法
@After
:释放资源
@Test
:测试方法,在这里可以测试期望异常和超时时间
@Ignore
:忽略的测试方法
@BeforeClass
:针对所有测试,只执行一次,且必须为static void
@AfterClass
:针对所有测试,只执行一次,且必须为static void
一个JUnit4 单元测试用例执行顺序为:
@BeforeClass –> @Before –> @Test –> @After –> @AfterClass
每一个测试方法的调用顺序为:
@Before –> @Test –> @After
 
写个例子测试一下,测试一下:
import static org.junit.Assert.*;
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 JUnit4Test {
@Before
public void before() {
 System.out.println("@Before");
}
@Test
public void test() {
  System.out.println("@Test");
  assertEquals(5 + 5, 10);
}
 
@Ignore
@Test
public void testIgnore() {
 System.out.println("@Ignore");
}
 
@Test(timeout = 50)
public void testTimeout() {
  System.out.println("@Test(timeout= 50)");
  assertEquals(5 + 5, 10);
}
 
@Test(expected = ArithmeticException.class)
public void testExpected() {
  System.out.println("@Test(expected= Exception.class)");
  throw new ArithmeticException();
}
 
@After
public void after() {
  System.out.println("@After");
  }
 
  @BeforeClass
  public static void beforeClass() {
  System.out.println("@BeforeClass");
  };
 
  @AfterClass
  public static void afterClass() {
  System.out.println("@AfterClass");
  };
};
 
输出结果的顺序为:
@BeforeClass
@Before
@Test(timeout = 50)
@After
@Before
@Test(expected = Exception.class)
@After
@Before
@Test
@After
@AfterClass