是否可以在上下文配置中指定一个@Component类,因此它的依赖性会自动解析?

我想在我的Spring Boot应用程序中执行单个服务的集成测试。所以我想只有这个服务,并且它的依赖性被添加到测试应用程序上下文中。是否可以在上下文配置中指定一个@Component类,因此它的依赖性会自动解析?

假设我有不同封装AB两班(AB参考)标有@Component注解。当我运行该应用程序时,@SpringBootApplication找到我所有的bean,并将它们添加到上下文中,并隐含@ComponentScan

在我的测试配置中,我只想指定一个类A并使Spring Boot解决它的依赖关系(B)并将其添加到上下文中。

是否可以使用Spring Boot 2或对我最合适的选项将创建一个单独的@Configuration所需的类明确声明? (实际上有超过2个,这就是为什么我问)

回答:

在我的测试配置,我想只能指定一个类A,让春天的引导来解决它的依赖(B),并把它添加到上下文。

不,不幸的是不可能的,因为Spring不知道如何找到依赖关系和/或实际需要的具体类型。

是否可以使用Spring Boot 2或最适合我的选项创建一个单独的@Configuration,并明确声明所需的类?

是的,您可以为此目的声明专门的测试@Configuration类;但是,您可能发现在测试类中简单重用一组配置类,以便从Spring TestContext框架中的上下文缓存支持中受益,将会更有益处。

以上是 是否可以在上下文配置中指定一个@Component类,因此它的依赖性会自动解析? 的全部内容, 来源链接: utcz.com/qa/258228.html

回到顶部