gpt4 book ai didi

java - 如何使用JAVA模拟GET HTTP请求

转载 作者:行者123 更新时间:2023-12-02 10:42:16 26 4
gpt4 key购买 nike

如何使用 JAVA 模拟 GET http 请求?我有这个方法:

public HTTPResult get(String url) throws Exception{
try {
ResponseEntity<String> response = restTemplate.getForEntity(url, String.class);
return new HTTPResult(response.getBody(), response.getStatusCode().value());
}
catch (ResourceAccessException e) {
String responseBody = e.getCause().getMessage();
JSONObject obj = new JSONObject(responseBody);
return new HTTPResult(obj.getString("responseBody"), Integer.parseInt(obj.getString("statusCode")));
}
}

我如何验证我收到:responseBody - 一些 json 和 statusCode,例如 200?

最佳答案

如果您想要一个“真正的”单元测试,您必须考虑使用模拟框架,例如 EasyMock 或 Mockito(我推荐后者)。这可能需要重新编写您的生产代码,因为对new()的调用经常会给这些框架带来问题(还有其他更好的框架:JMockit,或者PowerMockito,但再次强调:如果可能的话,请使用 Mockito)。

如果您希望进行更“端到端”类型的测试:Jersey 有测试框架(例如,请参阅 here )。含义:实际上,您几乎可以完全“单元测试”您的 REST 端点,而无需运行真实的服务器。

关于java - 如何使用JAVA模拟GET HTTP请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52855232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com