1

是否可以将使用 JUnit 框架的设置/拆卸方法放在单个类(这将是我的基类)中,以便在测试运行时它们的方法总是被称为第一个/最后一个?它将以类似的方式构建 nunit 测试

目前,我可以让我的测试开始的唯一方法是,如果我在我的测试所在的类中拥有 setup/teardown 方法(这是我不想避免的,以保持我的测试类整洁)

我希望建立的例子;

public class baseclass
{
    @Before
    public void setUp
    {}

    @After
    public void tearDown
    {}
}

public class tests
{
    @Test
    public void test1
    {
        // test content here
    }
}
4

2 回答 2

1

运行此测试并查看事件顺序

class Test1 {
    @Before
    public void setUp1() {
        System.out.println("setUp1");
    }
}

public class Test2 extends Test1 {
    @Before
    public void setUp2() {
        System.out.println("setUp2");
    }

    @Test
    public void test() {
        System.out.println("test");
    }

}
于 2015-03-05T09:06:44.803 回答
0

是的,只要您的test课程扩展您的baseclass.
例如:

  • 套房

    @RunWith(Suite.class)
    @SuiteClasses(Tests.class)
    public class AllTests {
    
    }
    
  • 基类

    public class BaseClass {
    
        @BeforeClass 
        public static void beforeAll() { 
        }
    
        @Before
        public void setUp() { 
        }
    
        @After
        public void tearDown {
        }
    
        @AfterClass 
        public static void afterAll() { 
        }
    }
    
  • 测试

    public class Test extends BaseClass {
    
        @Test
        public void test1() {
        }
    
        @Test
        public void test2() {
        }
    
    }
    
于 2015-03-05T09:14:32.453 回答