我什么时候可以写Mockito.anyInt()?

时间:2015-06-24 07:46:06

标签: mockito

这就是我的理解:

Mockito.when(list.get(Mockito.anyInt())).thenReturn("Foo Bar");
Assert.assertEquals("Foo Bar",list.get(7));

偶然地,我看到我也能做到,

Mockito.anyInt();
Mockito.when(list.get(13)).thenReturn("Foo Bar");
Assert.assertEquals("Foo Bar",list.get(7));

但我不能以下,

Mockito.anyInt();
Mockito.verify(list).get(5);

而不是

Mockito.verify(list).get(Mockito.anyInt());

没关系。为什么不呢?

1 个答案:

答案 0 :(得分:0)

Mockito.anyInt()用于模拟行为记录或验证。

Mockito.when(list.get(Mockito.anyInt())).thenReturn("Foo Bar");

表示使用任何Integer值调用get on list时,将返回“Foo Bar”字符串。

Mockito.verify(list).get(Mockito.anyInt());

是否正确用法并且意味着list.get()仅使用任何Integer值调用一次。