我正在尝试使用JMockit模拟一个接口类,遵循文档中的示例。但是,我得到一个错误说
java.lang.IllegalArgumentException:匹配以下模拟中找不到的实际方法: package.JMockitTest $ 1#HttpResponse(package.HttpClient client)
@Test
public void mockingAnInterface() throws Exception
{
HttpClient client = new MockUp<HttpClient>() {
@Mock
String HttpResponse(HttpClient client)
{
return "100";
}
}.getMockInstance();
Weblogic weblogic = new Weblogic();
Assert.assertEquals(client.HttpResponse("asd"), "100");
}
答案 0 :(得分:1)
您在第String
行传递client.HttpResponse("asd"), "100"
,而您的模拟方法需要HttpClient
您需要模拟方法,
@Mock
String HttpResponse(String client)
{
return "100";
}
在MockUP
或
您需要更改通话才能使用HttpClient
代替String