JUnit4通過註解的方式來識別測試方法,目前支持的主要註解有:
- @BeforeClass 全局只會執行一次,而且是第一個運行
- @Before 在測試方法運行之前運行
- @Test 測試方法
- @After 在測試方法運行之後允許
- @AfterClass 全局只會執行一次,而且是最後一個運行
- @Ignore 忽略此方法
使用的Jar包如下
建立MyTest類,測試代碼爲
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 MyTest {
static int i=0;
@BeforeClass
public static void beforeClass(){
i++;
System.out.println("我是beforeClass方法,值爲"+i);
}
@Before
public void before(){
i++;
System.out.println("我是before方法,值爲"+i);
}
@Test
public void test(){
i++;
System.out.println("我是test方法,值爲"+i);
}
@After
public void after(){
i++;
System.out.println("我是after方法,值爲"+i);
}
@AfterClass
public static void afterClass(){
i++;
System.out.println("我是afterClass方法,值爲"+i);
}
@Ignore
public void ignore(){
i++;
System.out.println("我是ignore方法,值爲"+i);
}
}
控制檯輸出的結果爲
注意,被@BeforeClass和@AfterClass標註的方法一定是靜態的,否則會報錯。
也可以定義多個@Test,如果定義多個,則按照方法位置的先後順序執行。
@Test
public void test(){
System.out.println("我是test方法");
}
@Test
public void test1(){
System.out.println("我是test1方法");
}
控制檯輸出結果爲:
Junit下的結果爲: