我有一个方法:
public V doSomething(T t, Class<V> classV){}
如何使用mockObject调用此方法并验证它?
我这样想:
when(mockObject.doSomething(any(MyConcreteT.class), AnotherConcrete.class).
thenReturn(obj);
verify(mockObject).doSomething(any(MyConcreteT.class), AnotherConcrete.class);
但收到错误
InvalidUseOfMatchersException:参数匹配器的使用无效!
欣赏任何(帮助)
答案 0 :(得分:1)
AFAIK,Mockito要求所有参数都是非匹配器或所有参数都是匹配器。它不允许混合它们。 (但是详细的错误消息应该告诉你这个。)
尝试:
when(mySpy.doSomething(any(MyConcreteT.class), eq(AnotherConcrete.class)).
thenReturn(obj);
verify(mySpy).doSomething(any(MyConcreteT.class), eq(AnotherConcrete.class));