【发布时间】:2017-07-31 06:53:19
【问题描述】:
一切听起来都是正确的,但是当我尝试模拟受保护的方法时,我得到了 org.mockito.exceptions.misusing.InvalidUseOfMatchersException。我该如何解决它?
private Service service;
private System system;
@BeforeMethod
public void setupMocks() throws Exception {
service = powerMock.mock(Service.class);
system = powerMock.mock(System.class);
}
public void sample_Test() {
PowerMockito.doReturn(system).when(service, "getValidatedDto",
Matchers.any(Long.class), Matchers.any(Date.class));
// some code
}
【问题讨论】:
-
你的测试看起来很失败;通常是与您发布的测试不同的测试,because Matchers use global state。请发布您的异常消息的文本,以及使用匹配器的其他测试。您还可以考虑添加一个调用
Mockito.validateMockitoUsage()的@AfterMethod,如果它滥用Mockito,这将导致测试显式失败。
标签: unit-testing mockito matcher powermockito