InvalidUseOfMatchersException:未使用任何原始值



我不知道是什么导致了这个问题,但它抛出了一个无效的UseOfMatchersException。

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"));
For more info see javadoc for Matchers class.

导致异常的代码如下。

when(EventHandlingForFileUpload.onUploadEvent(any(CustomBatchFile.class))).thenReturn(SomeCustomEvents);

如果EventHandlingForFileUpload.onUploadEvent是静态方法,则需要使用 PowerMock 或重构代码;Mockito仅适用于非final类和接口上的非final实例方法(没有Mockito 2.1的选择加入最终模拟魔法(。

我也没有使用任何原始值,但得到了"无效使用匹配者异常">

我有类似的东西

when(service.getResolver(eq(document.getId()), anyString())).thenReturn(aResolver); 

它抛出了异常。"文档"是模拟

在我将其更改为...

when(service.getResolver(eq(docId), anyString())).thenReturn(aResolver);

。它有效(即我移出了方法调用getId(((

最新更新