【发布时间】:2020-02-22 15:04:22
【问题描述】:
我正在使用 Apache HttpComponents (4.5.11) 来测试 Web API。
对于负面测试(例如发送错误请求),我还想检查响应正文,但 CloseableHttpClient 会使用响应的状态代码抛出 HttpResponseException 而不是返回实际响应。
有没有办法防止这种情况发生,或者我应该切换到另一个库(例如 RestAssured)?
这是我的做法:
try (CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse response = httpClient.execute(request)) {
ResponseHandler<String> handler = new BasicResponseHandler();
String body = handler.handleResponse(response);
//Deserialize and perform response assertions..
} catch(HttpResponseException e){
//Exception is caught here..
}
pom.xml 依赖:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.11</version>
</dependency>
【问题讨论】:
标签: java apache-httpclient-4.x apache-httpcomponents web-api-testing