【发布时间】:2016-06-07 06:21:40
【问题描述】:
所以现在的情况是这样的。我已经构建了一个应用程序并在控制器上运行了一些测试。然而,测试命中了实际的 3rd 方 API,然后 jackson 对结果进行绑定以映射到 POJO 对象。
我有点不确定如何在不手动填充 POJO 的情况下模拟整个事情。我正在寻找可以接受模拟 json 响应并将其绑定到 POJO 的东西,我可以验证它与模拟 json 上的数据匹配。
这是我的第三部分调用 API 的示例
/**
* Makes the API call and stores result in POJO
* It should also gracefully handle any errors
* @return
*/
public 3rdPartySearchResult searchAPICall(){
if(productQuery==null||productQuery.isEmpty() || productQuery.trim().isEmpty()){
throw new NullPointerException("Query string cannot be empty");
}
RestTemplate restTemplate = new RestTemplate();
WalmartSearchResult wsr = restTemplate.getForObject(3rdPartyAPIDetails.searchUrl, 3rdPartyPOJO.class,3rdPartyAPIDetails.APIKey,productQuery);
return wsr;
}
我需要模拟 restTemplate.getForObject 以指向模拟 json 文件。
【问题讨论】:
标签: java spring-mvc junit jackson mockito