如何处理 @BeforeEach @AfterEach 的所有测试,除了一个

How to deal with @BeforeEach @AfterEach for all test except one

一个测试class有多个测试,每个测试都依赖于@BeforeEach并被@AfterEach拆掉,除了一个害群之马!

Juni5如何处理? 让 @AfterEach@BeforeEach 白白多做一轮是否合法?

如果将测试移动到另一个 class 不切实际,您可以使用 @Nested class 来解决这个问题。 @BeforeEach 和@AfterEach 将仅针对内部定义的那些测试执行。这是一个例子:

@Test
void oneTEstWithNoBeforeAfterEach() {}

@Nested
class allOtherTestsGoHere {

    @BeforeEach
    void setUp() {}

    @AfterEach
    void tearDown() {}

    @Test
    void testOne() {}

    @Test
    void testTwo() {}
}