我正在我的编程起步阶段,想要询问关于使用Mockito模拟对象的问题,更具体地说是Unirest返回的响应对象。 假设我有一个数据库,我不想每次进行测试时都要麻烦它,而我想使用Mockito来解决这个问题,但问题是我不确定如何创建虚假的“httpResponse”对象来返回。 为了提供一些上下文,我附上了我的代码:
/**
* This method lists the ID of the activity when requested.
*
* @return the list of all activities
*/
public JSONArray getActivites() {
HttpResponse<JsonNode> jsonResponse = null;
try {
jsonResponse = Unirest
.get("http://111.111.111.111:8080/activity")
.header("accept", "application/json")
.asJson();
} catch (UnirestException e) {
System.out.println("Server is unreachable");
}
JSONArray listOfActivities = jsonResponse.getBody().getArray();
return listOfActivities;
}
所以我想的是,模拟Unirest,当调用.get方法时,返回一个假的HttpResponse。问题是,我不确定如何做到这一点,我在网上查找了一些资料,但并没有明白太多。
有没有可能用实际的数据库进行一次测试,并“提取”信息,以便每次测试时使用?
static
方法,您需要使用PowerMockito
。 - Lino