Mockito Matchers.any(...) 只在一个参数上
我想这样做:
verify(function, Mockito.times(1)).doSomething(argument1, Matchers.any(Argument2.class));
其中,参数 1 是 Argument1 类型的特定实例,而 argument2 是 Argument2 类型的任何实例。
但是我收到一个错误:
org.mockito.exceptions.misusing.InvalidUseOfMatchersException: Invalid use of argument matchers! 2 matchers expected, 1 recorded. This exception may occur if matchers are combined with raw values:
//incorrect:
someMethod(anyObject(), "raw String"); When using matchers, all arguments have to be provided by matchers. For example:
//correct:
someMethod(anyObject(), eq("String by matcher"));
按照这个建议,我可以写以下内容,一切都很好:
verify(function, Mockito.times(1)).doSomething(Matchers.any(Argument1.class), Matchers.any(Argument2.class));
我正在寻找 Argument1 类型的任何参数和 Argument2 类型的任何参数。
如何实现这种期望的行为?