我有两个同名、同类的 bean。我想模拟其中一个(模拟不是通过@Mock注释完成的,而是由于某种原因在Spring文件中完成的),而另一个则保持正常(用于集成测试)。
我能想到的一种方法是更改 @ContextConfiguration 的位置属性
中的资源文件
,并加载单独的配置以进行单元测试和集成测试。
还有其他方法可以完成这个任务吗?
我知道存在一些问题,例如为什么不使用@Mock?
、为什么要有两个相同类和相同bean的bean?
但我无法改变这一点因为有些部分已经存在,我不想改变它。
谢谢
最佳答案
当需要用于不同目的时,我有单独的配置文件。一种场景用于测试,另一种场景用于生产。我同意你的第一个想法。
关于java - AppContext 中具有相同名称和相同类的两个 bean(其中一个被 mock ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12911317/