Mockito - 完全验证所有参数

时间:2017-12-08 16:05:58

标签: java unit-testing mockito

如何验证对具有不同参数的方法的多次调用,还验证没有给出其他参数?

我知道我可以测试多个这样的参数:

@Spy
SomeClass someClass

@Test
public void test() {
  someClass.triggerSomething();

  verify(someClass, times(1)).someMethod(1, 1);
  verify(someClass, times(1)).someMethod(2, 2);
  verify(someClass, times(1)).someMethod(3, 3);
  verify(someClass, times(1)).someMethod(4, 4);
  verify(someClass, times(1)).someMethod(5, 5);
}

如何验证我还没有使用任何其他参数组合来调用它?

1 个答案:

答案 0 :(得分:6)

使用verifyNoMoreInteractions(someClass)

  

检查任何给定的模拟是否有任何未经验证的交互。

     

验证模拟后,您可以使用此方法 - 以确保您的模拟没有调用任何其他内容。