【发布时间】:2018-07-18 06:37:51
【问题描述】:
我有类似的东西
private static final CustomObject ObjectA = new CustomObject();
@Mock
Foo1 foo1;
@Mock
Foo2 Foo2 = new Foo2(ObjectA);
@Mock
Foo3 foo3;
@InjectMocks
ContainerClass container;
我想在 Foo2 被注入容器之前用 ObjectA 初始化它。上面的代码不起作用。
编辑:我正在尝试模拟 Foo2,但有一个 Foo2 的内部对象,我想用一个真实对象初始化它,所以当我调用 Foo2 的方法时,这个内部对象被用来给我基于我需要的结果我在构建过程中提供的值。
【问题讨论】:
-
当前状态下的问题不完整,因此不清楚。阅读How to Ask,然后阅读edit 问题,提供minimal reproducible example,可用于重现问题,从而更好地理解所问的问题。
-
如果你在模拟 Foo2,那么当你调用 Foo2 的方法时,结果不能由它的构造方式来定义。您需要使用 Mockito.when 定义结果
标签: java unit-testing dependency-injection mockito