2016-01-21 173 views
0

我想模拟一个接口类使用JMockit,遵循文档中的示例。然而,即时得到一个错误,指出JMockit抛出错误

java.lang.IllegalArgumentException异常:匹配未找到以下嘲笑真正的方法: package.JMockitTest $ 1号的HttpResponse(package.HttpClient客户端)

@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"); 

} 
+1

错误是说,没有'字符串的HttpResponse(HttpClient的客户端)'的'HttpClient'类。什么是“HttpClient”?你试图模拟哪种方法? – assylias

回答

1

你传递一个String在行client.HttpResponse("asd"), "100",而你的嘲笑方法需要一个HttpClient您需要模拟方法,

@Mock 
String HttpResponse(String client) 
{ 
      return "100"; 
} 

MockUP

你需要改变你的电话用HttpClient代替String

+0

啊是的!这些小小的严重错误。谢谢!将在您的答案可用时接受您的答案 – Programmer