测试一种从第三方休息服务返回值的方法

时间:2018-07-11 15:55:55

标签: unit-testing junit mocking client runner

我有一种从第三方休息服务返回数据的方法。我无法从本地计算机访问第三方服务。我尝试实现MockRestServiceServer和WireMock来测试它们,但没有成功。

下面是代码

public String callRestClient() throws IOException {
    RestTemplate restTemplate = new RestTemplate();
    Map<String, String> reqMap = new HashMap<String, String>();
    reqMap.put(----, ----);
    try {
        reqMap.put(----, -----);
        JSONObject reqJSON = new JSONObject(reqMap);
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_JSON);
        HttpEntity<String> entityH = new HttpEntity<String>(reqJSON.toString());
        ResponseEntity<String> result = restTemplate.exchange(vaultUri, HttpMethod.POST, entityH, String.class);        
        JSONParser parser = new JSONParser();
        JSONObject resultJsonObj;
        resultJsonObj = (JSONObject) parser.parse(result.getBody());
        JSONObject authObj = (JSONObject) resultJsonObj.get("auth");
        String client_token = (String) authObj.get("client_token");
        return client_token;
    } catch (ParseException e) {
        log.error(e.getMessage());
    }
    return null;
}

正在使用Spring Boot开发应用程序。 预先感谢。

0 个答案:

没有答案