Spring Boot测试类能否重用应用程序上下文以加快测试运行速度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot测试类能否重用应用程序上下文以加快测试运行速度?相关的知识,希望对你有一定的参考价值。

@ContextConfiguration位置属性对Spring Boot集成测试没有意义。有没有其他方法可以在使用@SpringBootTest注释的多个测试类中重用应用程序上下文?

答案

是。 Actually it is default behavior。链接指向Spring Framework文档,Spring Boot使用它。

顺便说一下,当使用@ContextConfiguration时,默认情况下也会重复使用上下文。

另一答案
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)

上面的注释表示加载完整的上下文,并且在测试中使用相同的上下文。这意味着它只加载一次。

Spring Boot提供@SpringBootTest注释,当您需要Spring Boot功能时,它可以用作标准spring-test @ContextConfiguration注释的替代方法。注释的工作原理是通过SpringApplication创建测试中使用的ApplicationContext

以上是关于Spring Boot测试类能否重用应用程序上下文以加快测试运行速度?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Spring Boot REST 应用程序中重用类?

跨junit测试类重用spring应用程序上下文

Java Spring Boot 测试:如何从测试上下文中排除 java 配置类

带有 DB 的 Spring Boot 应用程序 - 使用 @DirtiesContext 重新创建上下文后测试类失败

Spring Boot 集成测试:@AutoConfigureMockMvc 和上下文缓存

通过所有 SpringBootTests 使用一个 Spring Boot 上下文