Java spy方法上对象的mockito返回序列
我知道您可以在模拟上设置要返回的几个不同对象。前Java spy方法上对象的mockito返回序列,java,mockito,Java,Mockito,我知道您可以在模拟上设置要返回的几个不同对象。前 when(someObject.getObject()).thenReturn(object1,object2,object3); 你能对一个被监视的物体做同样的事情吗?我在一个间谍身上尝试了上述方法,但没有成功。我在文档中阅读了在间谍上使用doReturn(),如下所示 doReturn("foo").when(spy).get(0); 但是deReturn()只接受一个参数。我想在间谍身上按特定顺序归还不同的物品。这可能吗 我有一个像下面
when(someObject.getObject()).thenReturn(object1,object2,object3);
你能对一个被监视的物体做同样的事情吗?我在一个间谍身上尝试了上述方法,但没有成功。我在文档中阅读了在间谍上使用doReturn()
,如下所示
doReturn("foo").when(spy).get(0);
但是deReturn()
只接受一个参数。我想在间谍身上按特定顺序归还不同的物品。这可能吗
我有一个像下面这样的类,我正在尝试测试它。我想测试myClass
,而不是anotherClass
public class myClass{
//class code that needs several instances of `anotherClass`
public anotherClass getObject(){
return new anotherClass();
}
}
您可以在
when()
之前链接doReturn()
调用,因此这是可行的(mockito 1.9.5):
另外,我不知道您可以在(x.y())时执行。然后返回(z1,z2)
,当我必须执行此操作时,我使用链式。然后返回()
调用:
when(x.y()).thenReturn(z1).thenThrow().thenReturn(z2)
我只想补充一点,我更喜欢
BDDMockito
别名,但这是代码中的偏好问题。这将给出以下内容:willReturn(“foo”).willReturn(“bar”).willCallRealMethod().given(meh).meh()代码>
when(x.y()).thenReturn(z1).thenThrow().thenReturn(z2)