【发布时间】:2017-05-25 14:18:51
【问题描述】:
我正在使用InjectMocks 和Spy 注释来注入原型bean。
但是,注入 bean 的行为类似于单例 bean。有没有办法在 Mockito 中注入原型作用域 bean?
我正在使用 SpringJUnit4ClassRunner 运行 JUnit,并使用 MockitoAnnotations.initMocks(this) 进行初始化模拟。
【问题讨论】:
-
如果你使用@Spy,如果有多个实例,你会监视你的原型bean的哪个实例?您正在声明一个变量,但希望它充当多个变量,我说对了吗?
-
我正在使用 Spy,因为依赖项是私有变量。是的,我声明了 1 个变量,并且我希望 Mockito 每次被引用时都会注入新的 bean 实例。
-
据我所知,没有办法做到这一点,当然是手动的。我怀疑这是在典型的模拟设置中的真正需求,您想在间谍上调用
do...when...或verify,如果@Spy变量只是某种模板而不是实际的间谍,这是不可能的.