我有一个主要方法来实现/调用另一个方法。我正在为main方法编写一个测试用例,其中必须模拟调用方法的响应。
public String getAccount(String add, String sub) {
...
Response r = getService(add, sub);
...
}
public Response getName(String add, String sub) {
...
Response r = WebTarget.path(pathString).queryParam("aaa", "xxxx").queryParam("byId", add)
.request().header("accept", "json")
.header("Authorization",token).get();
return r;
}
我正在尝试在此处编写测试用例,以便模拟getName的响应以返回非200响应。
@Test
public void testGetAccount(){
when(getName).thenReturn(...);//How do I mock this?
String result = getAccount(anyString, anyString);
assertNotEqual(Https.Ok);
}
如何在此处模拟getName方法的响应?
答案 0 :(得分:0)
尝试:
MyResponseObject myResponseObject= MyResponseObject();
Response
response=Response.status(Response.Status.OK).entity(myResponseObject).build();
when(getName(anyString, anyString)).thenReturn(response);