MOCKITO:匹配除一个字符串



如何使用与特定字符串匹配的任何字符串?

我曾尝试使用一些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

相关内容

  • 没有找到相关文章