Unit testing 如何对整个JUnit测试组进行一次安装拆卸?

Unit testing 如何对整个JUnit测试组进行一次安装拆卸?,unit-testing,junit,Unit Testing,Junit,在开始测试之前,我想用测试数据设置测试数据库。我想我应该在单元测试开始时运行一次,而不是在函数的每个测试类之前?我该怎么做呢?您可以通过注释实现这一点: @RunWith(Suite.class) @SuiteClasses({UserDaoTests.class, OrderDaoTests.class}) public class TestSuiteSetup { @BeforeClass public static void setUpDatabase() {

在开始测试之前,我想用测试数据设置测试数据库。我想我应该在单元测试开始时运行一次,而不是在函数的每个测试类之前?我该怎么做呢?

您可以通过注释实现这一点:

@RunWith(Suite.class)
@SuiteClasses({UserDaoTests.class, OrderDaoTests.class})
public class TestSuiteSetup {
    @BeforeClass
    public static void setUpDatabase() {
        // ...
    }

    @AfterClass
    public static void tearDownDatabase() {
        // ...
    }
}
来自
UserDaoTests
OrderDaoTests
的测试将在
setUpDatabase
tearDownDatabase
方法之间运行。

您可以通过注释实现:

@RunWith(Suite.class)
@SuiteClasses({UserDaoTests.class, OrderDaoTests.class})
public class TestSuiteSetup {
    @BeforeClass
    public static void setUpDatabase() {
        // ...
    }

    @AfterClass
    public static void tearDownDatabase() {
        // ...
    }
}

来自
UserDaoTests
OrderDaoTests
的测试将在
setUpDatabase
tearDownDatabase
方法之间运行。

可接受的解决方案将执行此操作。它可以跨任意一组测试用例工作。

可接受的解决方案可以做到这一点。它可以跨任意一组测试用例工作。

就其价值而言,支持@BeforeSuite和@AfterSuite(以及更多的配置注释)。

就其价值而言,支持@BeforeSuite和@AfterSuite(以及更多的配置注释)。

如果我离开
@RunWith
,我找不到
。如果我删除它,我将找不到任何测试,但在
DataAccessTests
中有4个
@Test
。请参考我的另一个问题,如果我离开
@RunWith
,我得到
类未找到
。如果我删除它,我将找不到任何测试,但在
DataAccessTests
中有4个
@Test
。请参考我的另一个问题