最近被challenge了,大概背景是我发出的Http Request请求没有设置timeout,不知道是否由此导致,其中一个请求是在早晨5点发出,结果到9点仍旧没有收到返回:hung住了。被问及Http Request的timeout是多少,我竟无言以对!
后来研究了一下Rest-Assured设置Request的timeout值的方式,其实也是从github拷贝出来的,供参考:
RestAssured.config = RestAssured.config().httpClient(httpClientConfig()
.setParam(ClientPNames.CONN_MANAGER_TIMEOUT, Long.valueOf(DEFAULT_TIMEOUT_IN_MS)) // HttpConnectionManager connection return time
.setParam(CoreConnectionPNames.CONNECTION_TIMEOUT, DEFAULT_TIMEOUT_IN_MS) // Remote host connection time
.setParam(CoreConnectionPNames.SO_TIMEOUT, DEFAULT_TIMEOUT_IN_MS) // Remote host response time
);
Rest-Assured底层实现也是基于Apache HttpClient,上述HttpClient的配置中,各个参数的意义都于后面的注释相对!