【发布时间】:2018-10-20 00:43:10
【问题描述】:
作为 Mockito Junit 的初学者,这可能听起来很垃圾的问题,但我仍然想确认:
Class1 input1;
@Mock
Class2 input2;
private Class3 obj;
@Before
public void setup() {
this obj = new Class3(input1, input2);
}
@Test
public void doTest() {
val result1 = obj.method1(input1); // return sth.
val result2 = obj.method2(input2); // return null.
}
所以 input1 和 input2 被传递到 Class3 obj 中,但只有 input2 是 Mocked 依赖。然后我发现当我调用依赖于input2的method2时,它只是返回null。
那么任何模拟类本质上都是空的?这就是为什么我们需要使用 when...thenReturn 来模拟类?毕竟,我们的目的是测试主要功能,而不是依赖关系。
我的理解正确吗?
【问题讨论】:
标签: junit dependency-injection mockito