如何使用与特定字符串匹配的任何字符串?
我曾尝试使用一些hamcrest匹配器来消极并结合其他匹配项,但是hamcrest匹配器都是 Matcher<T>
类型的返回值,该值与Mockito Matchers无法很好地工作。
只需指出,使用Mockito
您也可以使用额外的手语和参数匹配者
import static org.mockito.AdditionalMatchers.not;
import static org.mockito.ArgumentMatchers.eq;
//anything but not "ejb"
mock.someMethod(not(eq("ejb")));
根据其文档:
使用逻辑和(),not()或()匹配器的示例:
//除非" EJB",
Mock.SomeMethod(NOT(EQ(" EJB")));
其他信息中有更多信息,所以问题
希望它有帮助
我使用的解决方案:
import static org.hamcrest.CoreMatchers.not;
import static org.mockito.ArgumentMatchers.argThat;
// ...
argThat(not("ExceptionString"))
版本
- Mockito 3.3.3
- Hamcrest 1.3