gpt4 book ai didi

testing - SpringBootTest中如何覆盖应用Bean

转载 作者:行者123 更新时间:2023-11-28 20:52:27 30 4
gpt4 key购买 nike

我正在为我的 Spring Boot Web 服务编写集成测试,需要用测试实现替换 Bean 的注入(inject)(在本例中它实际上是 Kafka Consumer 对象)。

过去提供 xml 文件来定义备用 bean 实现或配置很简单,但我们现在使用 Spring Boot 和基于 Java 的配置以及注释。

我已经通过编写糟糕的 Spring-Boot 文档进行了斗争,但无法使任何工作正常进行。编写 Spring 文档的前提是读者已经了解有关 Spring Boot 的所有知识,因此实际上毫无用处。

很抱歉,我没有代码可以分享,因为我已经尝试了所有可能的解决方案,但没有一个有效。我正在寻找最佳实践解决方案示例...

更新:我很确定我在 Spring 中发现了一个错误。尽管调用了 bean 初始化方法,但当测试类在上一个测试类之后运行时,我为一个测试类重写 bean 所做的努力没有得到尊重!我怀疑第一个 bean 仍然被传递到 Web 应用程序中,尽管它被重新启动了。

最佳答案

mock 对你来说是否足够 - 那么你应该看看 @MockBean - 参见 http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-testing.html#boot-features-testing-spring-boot-applications-mocking-beans .

否则,这实际上取决于如何将实际实现添加到应用程序上下文中,以及您是否掌握了它。

关于testing - SpringBootTest中如何覆盖应用Bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40556735/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com