網頁

2018/3/5

JUnit @BeforeClass, @Before, @Test, @After, @AfterClass 執行順序

JUnit 4的@BeforeClass, @Before, @Test, @After, @AfterClass執行順序如下。

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

public class TestCaseDemo {

  @BeforeClass
  public static void beforeClass(){
    System.out.println("beforeClass()");
  }
  
  @Before
  public void before(){
    System.out.println("before()");
  }
  
  @Test
  public void testA(){
    System.out.println("testA()");
  }
  
  @Test
  public void testB(){
    System.out.println("testB()");
  }
  
  @After
  public void after(){
    System.out.println("after()");
  }
  
  @AfterClass
  public static void afterClass(){
    System.out.println("afterClass()");
  }
  
}

執行結果如下

beforeClass()
before()
testA()
after()
before()
testB()
after()
afterClass()

@BeforeClass@AfterClass在一個Test Case只會被執行一次。
@Before@After會在每一次測試方法@Test前後各執行一次。

沒有留言:

張貼留言