是否可以在JUnit中为每个测试用例使用不同的@Before @After?

Amr*_*rit 9 java eclipse junit unit-testing

我是新手Java & JUnit,遇到了不同的灯具.我在网上搜索了很多,但我找不到答案.

是否可以@Before @After针对不同的测试用例使用不同的JUnit?例如:我有以下TC,那么可以使用不同@Before的测试和不同@Before的test1

 import static org.junit.Assert.assertEquals;

 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 setUpBeforeClass() throws Exception {
    System.out.println("Before Class");
}

@AfterClass
public static void tearDownAfterClass() throws Exception {
    System.out.println("Tear Down After Class");
}

@Before
public void setUp() throws Exception {
    System.out.println("Setup");
}

@After
public void tearDown() throws Exception {
    System.out.println("Tear Down");
}

@Test
public void test() {
    int a = 1;
    assertEquals("Testing...", 1, a);
}

@Ignore
@Test
public void test1() {
    int a = 156;
    assertEquals("Testing...", 156, a);
}

}
Run Code Online (Sandbox Code Playgroud)

谁能指导我?

Ade*_*ros 11

如果你想不同的BeforeAfter,把每个测试在其适当的公共类

在执行类中的每个测试之前,将执行使用@Before标记的方法.


bla*_*ank 5

只需编写一个您在测试中调用的私有方法.