我已经和它搏斗了一段时间,作为Java和Mockito新手,我希望这是一个类似的愚蠢错误。
我的方法看起来像
public WrapperObject<Void> myMethod(...) {
WrapperObject<Object1> o1 = getObject1FromWebServiceAndWrapIt(buildVar1(a));
...
private buildVar1(a) {
return someVar;
}
}
@Test
public void testMyMethod() throws Exception {
Mockito.when(getObject1FromWebServiceAndWrapIt(MOCK_VAR1, MOCK_VAR2)).thenReturn(WrapperObject.of(MOCK_o1));
...
}
即使在这个简单的情况下,我希望o1的值为MOCK_o1,而是将其解析为null
。
我尝试过Mockito.doReturn().when()
模式,但也无法返回除null之外的任何内容。
我很抱歉这个简短的代码示例,但它处于一堆垃圾的中间,很难将这一切粘贴在这里。有没有人认识到一些可怕的模式?
答案 0 :(得分:0)
这个问题措辞不当,但答案却与问题无关。
问题最终与Mockito.any()
,不模拟varargs
的事实有关。我使用的方法需要传递varargs
的模拟对象。
您可以使用Mockito.anyVararg()
来解决此问题。