- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经尝试调试这段代码一段时间了,但仍然没有成功。我继续专门为此代码抛出“InvalidUseOfMatchersException”:
对于设置:
service = mock(Service.class);
newRequest = mock(Request.class);
when(service.newRequest(anyString(), anyString(), anyString())).thenReturn(
newRequest);
并且在使用该服务的类中:
Request newRequest = Service.newRequest(
mId, "mp", itemID);
我假设它失败了,因为我在 when...thenReturn 子句中传入了 3 个“anyString()”,但也可能是它在硬编码的“mp”上失败了。所以我试图用这个替换 when 子句:
when(service.newRequest(anyString(), eq("mp"), anyString())).thenReturn(
newRequest);
但仍然收到 InvalidUseOfMatchersException。
我是否遗漏了一些关于 mockito 应该如何为此工作的信息?
全栈:
org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
Invalid use of argument matchers!
3 matchers expected, 2 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"));
For more info see javadoc for Matchers class.
at ServiceFacade.getSimilarities(ServiceFacade.java:29)
at FacadeTest.getSimilarities(FacadeTest.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodImpl.invoke(DelegatingMethodImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
最佳答案
基于此语法:
Service.newRequest(mId, "mp", itemID);
看起来 newRequest
是一个静态方法。 Mockito 本质上是通过子类化(实际上生成动态代理)来工作的,因此它不适用于静态方法,因为不能通过子类化来覆盖静态方法。出于类似的原因,Final 方法不可模拟。
如果那是正确的,切换到工厂对象而不是工厂方法,这将使您模拟工厂的实例,或使用 Powermock模拟静态字段。
关于java - Mockito - InvalidUseOfMatchersException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24418778/
我的测试用例出现以下错误: junit.framework.AssertionFailedError: Exception occured : org.mockito.exceptio
我正在使用 java spring boot 并尝试在单元测试中为 AWS s3 存储桶编写模拟。以下是在执行测试时导致一些问题的代码 @Mock AmazonS3 s3client;
我已经尝试调试这段代码一段时间了,但仍然没有成功。我继续专门为此代码抛出“InvalidUseOfMatchersException”: 对于设置: service = mock(Se
import org.mockito.Mockito; public class Scratch2 { public static class Foo { } public interface Cus
我在使用mockito 2.23.4、junit4 和springrunner 测试方法时遇到困难。我不断收到 InvalidUseOfMatchersException 即使代码对我来说看起来非常好
我目前在使用 Mockito 时遇到问题。但首先这是我的代码,它创建了 Mockito 提示的模拟: @Test public void testRestEndpointGeneration(
我有这个 TestNG 测试方法代码: @InjectMocks private FilmeService filmeService = new FilmeServiceImpl(); @Mock p
我正在使用mockito,并且面临与匹配器参数相关的问题。 我遇到了这个异常: org.mockito.exceptions.misusing.InvalidUseOfMatchersExceptio
我正在学习 Android MVP 架构并尝试使用 Mockito/JUnit 测试一些方法。我正在从本教程中学习: https://codelabs.developers.google.com/co
我有以下模拟对象: @Mock ObjectMapper objectMapper = new ObjectMapper(); 然后我写了一些 mock 逻辑,声称我做错了: Mockito.when
我正在使用 mockito 进行测试,但我遇到了这个问题: org.mockito.exceptions.misusing.InvalidUseOfMatchersException: Invalid
我有一组测试来验证我们的 Android 应用程序中的某些功能。部分代码负责将某些字符串放入某些 TextView 中。所以我想创建模拟的 TextView 对象以在测试时使用: public sta
org.mockito.exceptions.misusing.InvalidUseOfMatchersException:在此处检测到错误的参数匹配器: 我在对以下静态方法执行 powermocki
我想模拟我的 PermissionHostCompat 类的操作 requestPermission(@NonNull String Permission, int requestCode) 。 pu
我对mockito完全陌生,我已经尝试了很多在网上找到的解决方案,但我仍然无法解决这个问题。我什至不确定是什么原因造成的。我需要为一个非常成熟的代码创建一个模拟测试,我不允许更改该代码。我需要模拟的代
我有这个测试 @Test public void addVacancy() throws Exception{ Vacancy mockVacancy = Mockito.mock(V
我正在尝试使用mockito的ArgumentCaptor类来捕获一些参数,然后对其进行一些验证。但它抛出了一个异常。 这就是打印的错误消息。 org.mockito.exceptions.misus
我在构建测试的 when-then 部分时遇到了问题。运行测试时出现以下错误。 我已经查看了这个 SO 链接 ( Mockito: InvalidUseOfMatchersException ) 并重
我最近在我的项目中将 Maven Surefire 插件升级到版本 v2.14.1(从 v2.6)。升级后,Mockito 开始在所有 JUnit 测试中抛出 InvalidUseOfMatchers
在我的 JUnit 类中,我有以下代码: @Mock private HttpServletRequest servletRequest; @Mock WidgetHelper widgetHelpe
我是一名优秀的程序员,十分优秀!