假设消息被模拟,在下种情况下 - 最后一个verify
记得他面前的2?因此,应该在times
中的数字是times(3)
?
when(message.hasMessages()).thenReturn(true);
assertTrue(message.hasMessages());
assertTrue(message.hasMessages());
verify(message, times(2)).hasMessages();
assertTrue(message.hasMessages());
verify(message, times(1)).hasMessages();
Mockito不会重置调用计数器。 verify
计数所有模拟的方法调用。
所以verify(message, times(3)).hasMessages();
是正确的,因为hasMessages()
被完全调用了3次。