【发布时间】:2010-05-16 10:01:27
【问题描述】:
一点背景:
我正在使用 Spring 2.5,特别是 Spring IOC 和注释。
我在我的代码中使用@Autowired(自动装配是按类型完成的)
并使用@Component 将类公开给自动布线。
当我尝试测试我的代码时,出现了下面描述的情况。
现在问题来了:
注意:我为测试环境使用了不同的 Spring 上下文。
我有一个FOO 的类@Autowired,但在测试上下文中我想使用相同类型的不同类MockFoo(扩展FOO)。
由于FOO 类的依赖注入的多个选项(FOO 和MockFOO 都符合类型检查),Spring 设置当然会自动失败。
我正在寻找一种方法来注入测试 bean 而不是原始 bean。
我希望 Spring 允许使用上下文配置文件来覆盖 bean 注入或命令 Spring 不自动装配特定的 bean。
但是
所有这些选项似乎只存在于最初在 Spring 上下文配置文件中定义的 bean。
【问题讨论】:
标签: unit-testing spring dependency-injection