Я надсилаю запит поштою з REST Assured. проблема полягає в тому, що у нього немає тайм-ауту взагалі. У моєму випадку сервер іноді виходить із зони покриття, і це заблокує запит назавжди.
Відповіді:
1 для відповіді № 1Ти можеш бачити тут. Це може зробити декілька способів, перевірте це:
when().async().with().timeout(20, TimeUnit.SECONDS)
або
given().config(config().asyncConfig(withTimeout(100, TimeUnit.MILLISECONDS))).
1 для відповіді № 2
Знайшли відповідь. Я розміщую його тут, сподіваюсь, що це допоможе комусь.
RestAssured.config=RestAssuredConfig.config().httpClient(HttpClientConfig.httpClientConfig().
setParam("http.connection.timeout",300000).
setParam("http.socket.timeout",300000).
setParam("http.connection-manager.timeout",300000));
0 для відповіді № 3
Rest-Assured базується на apache httpclient:
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
);