首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么Mockito会为这段代码抛出一个"InvalidUseOfMatchersException“?

Mockito会为这段代码抛出一个"InvalidUseOfMatchersException"的原因是因为在使用Mockito进行测试时,使用了错误的参数匹配器(Matchers)。Mockito要求在使用参数匹配器时,必须使用特定的方法进行匹配,而不是直接在方法调用中使用参数匹配器。

例如,假设有以下代码片段:

代码语言:txt
复制
List<String> mockedList = mock(List.class);
when(mockedList.get(anyInt())).thenReturn("element");

在这个例子中,anyInt()是一个参数匹配器,用于匹配任意整数。但是,如果将参数匹配器直接放在方法调用中,如下所示:

代码语言:txt
复制
when(mockedList.get(anyInt())).thenReturn("element");

这将导致Mockito抛出"InvalidUseOfMatchersException"异常。正确的用法是使用特定的方法来包装参数匹配器,如下所示:

代码语言:txt
复制
when(mockedList.get(Mockito.anyInt())).thenReturn("element");

这样就可以正确地使用参数匹配器进行测试。

总结起来,Mockito会抛出"InvalidUseOfMatchersException"异常是因为在使用参数匹配器时,没有使用正确的方法进行包装。正确的用法是使用特定的方法来包装参数匹配器,以确保测试的正确性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的结果

领券