验证对模拟对象的方法调用

要检查是否在模拟对象上调用了方法,可以使用 Mockito.verify 方法:

Mockito.verify(someMock).bla();

在这个例子中,我们断言 bla 是在 someMock 模拟对象上调用的。

你还可以检查是否使用某些参数调用了方法:

Mockito.verify(someMock).bla("param 1");

如果要检查方法是否未被调用,可以将其他 VerificationMode 参数传递给 verify

Mockito.verify(someMock, Mockito.times(0)).bla();

如果你想检查这个方法被多次调用(在这种情况下我们检查方法 bla 被调用了 23 次),这也有效:

Mockito.verify(someMock, Mockito.times(23)).bla();

这些是 VerificationMode 参数的更多示例,可以更多地控制应该调用方法的次数:

Mockito.verify(someMock, Mockito.never()).bla(); // same as Mockito.times(0)

Mockito.verify(someMock, Mockito.atLeast(3)).bla(); // min 3 calls

Mockito.verify(someMock, Mockito.atLeastOnce()).bla(); // same as Mockito.atLeast(1)

Mockito.verify(someMock, Mockito.atMost(3)).bla(); // max 3 calls