不想在TestContainers中使用DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD
创始人
2025-01-10 07:30:23
0

在使用 TestContainers 时,如果在测试方法中使用了注解 @DirtiesContext,并设置了类级别的 DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD,那么每个测试方法执行后都将强制销毁 Spring 上下文,并重新创建新的 Spring 上下文。这种操作可能会导致测试用例的执行效率下降,因为在每次测试方法之间都要重建 Spring 上下文。

如果您不想使用此模式,您可以使用 Testcontainers 和 Spring 的集成支持来规避此限制。您只需要在测试类上添加 @Testcontainers 和 @SpringBootTest 注释,然后添加 testcontainers-ryuk 依赖:


  com.palantir.docker
  ryuk
  0.2.3
  test

此时,只需在 test 方法中使用 @Container 注释,您就可以在测试过程中始终保持 TestContainers 容器和 Spring 容器的状态:

@SpringBootTest
@Testcontainers
class MyTest {
 
    @Container
    static PostgreSQLContainer postgreSQLContainer = new PostgreSQLContainer();
 
    @Autowired
    MyService myService;
 
    @Test
    void test() {
        // use myService with postgreSQLContainer
    } 
}

通过这种方法,您可以更加有效地管理测试环境,并在测试过程中保持容器和 Spring 上下文的状态。

相关内容

热门资讯

9分钟免费透视!德普之星怎么设... 9分钟免费透视!德普之星怎么设置埋牌(透视辅助软件)详细辅助俱乐部(其实俱乐部)1)辅助挂:进一步探...
4分钟软件!如何下载德普之星辅... 4分钟软件!如何下载德普之星辅助软件,德普之星私人局辅助免费,详细教程(有挂方法);德普之星私人局辅...
二分钟私人局辅助免费!德普之星... 二分钟私人局辅助免费!德普之星透视辅助,德普之星透视辅助软件,详细教程(有挂规律);1)德普之星透视...
二分钟辅助器!德普之星透视辅助... 二分钟辅助器!德普之星透视辅助软件,德普之星透视软件免费入口官网,详细教程(有挂规律)二分钟辅助器!...
一分钟开辅助!德普之星辅助器怎... 一分钟开辅助!德普之星辅助器怎么用(透视辅助)详细辅助神器(一贯神器);1、进入到德普之星辅助器黑科...
3分钟私人局辅助器!德普之星透... 3分钟私人局辅助器!德普之星透视辅助软件下载(透视辅助软件)详细辅助脚本(好像脚本);1、让任何用户...
四分钟透视挂!德普之星辅助器怎... 四分钟透视挂!德普之星辅助器怎么用,德普之星辅助工具如何打开,详细教程(有挂插件)1、构建自己的德普...
八分钟私人局透视!德普之星透视... 八分钟私人局透视!德普之星透视辅助软件下载(透视辅助软件)详细辅助脚本(原来脚本);1、德普之星透视...
6分钟破解版!德普之星透视辅助... 6分钟破解版!德普之星透视辅助(透视辅助软件)详细辅助器(确实器)1、不需要AI权限,帮助你快速的进...
一分钟辅助工具!德普之星透视辅... 一分钟辅助工具!德普之星透视辅助软件是真的吗(透视辅助)详细辅助程序(本来程序)1、很好的工具软件,...