【发布时间】:2016-05-03 21:29:48
【问题描述】:
我的代码看起来像
Request1 req1 = EasyMock.anyObject(Request1.class);
Request2 req2 = EasyMock.anyObject(Request2.class);
Request3 req3 = EasyMock.anyObject(Request3.class);
@Mock Service service;
// ...
@Test
myTest() {
Response resp = new Response();
EasyMock.expect(service.lookup(req1, req2)).andReturn(resp);
// ...
}
“EasyMock.expect”行失败了
预计 2 个匹配器,记录 3 个。
当记录方法时匹配器与原始值混合时,通常会发生此异常:
富(5,当量(6)); // 错误
您根本不需要使用匹配器或为每个参数使用匹配器:
富(当量(5),当量(6)); // 对
富(5, 6); // 也对
我给了两个匹配器。也许问题在于andReturn 被赋予了一个值,但我当然想说“无论给出什么输入,都返回resp。”
这似乎与通常的原因不同。 FWIW andStubReturn 给出了同样的错误(这是我所期望的)。
【问题讨论】:
标签: java junit mocking easymock