如何使用Mockito验证模拟方法是否完全没有被调用 - 使用任何参数组合?如何使用Mockito验证未使用任何参数组合调用的模拟方法
例如,我有一个对象 - myObject
- 即使用第二个模拟对象 - myMockedOtherObject
- 它有一个方法 - someMethodOrOther(String parameter1, String parameter2)
。
我想打电话给myObject.myMethod()
并验证someMethodOrOther()
不被调用 - 与任何的参数组合。
例如为:
myObject.doSomeStuff();
verify(myMockedOtherObject, never()).someMethodOrOther();
除了我不能这样做,因为someMethodOrOther()
要求提供具体参数。
OP:'never()'对于特定的方法调用是确保方法未被调用的最佳方法。如果您已经验证了所有其他方法调用,或者没有其他方法调用,那么您还有'verifyNoMoreInteractions(...)'和'verifyZeroInteractions(...)'在你的处置;但是,这些可以使你的测试比你想要的更脆弱,所以它们不如Matt的解决方案。 –