[英]Rest Assured - retry request if failed
示例测试:
@Test
public void shouldGetRoutesList() {
Response response =
given()
.headers("RequestId", 10)
.headers("Authorization", accessToken)
.contentType(ContentType.JSON).
expect()
.statusCode(HttpURLConnection.HTTP_OK).
when()
.get("address");
String responseBody = response.getBody().asString();
System.out.println(responseBody);
logger.info("Log message");
}
事情是有时来自服务的响应等于 500 错误。 这是因为应用程序错误和应用程序错误所以我想添加临时文件。 如果服务返回 500,则重试.get
的解决方法。我在考虑if
或do-while
但我知道这不是很聪明的方法。 任何人都可以建议一些解决方案吗?
换句话说 - 如果 statusCode=!HTTP_OK,我想重试整个测试(或 just.get)
如果您使用的是TestNG,那么您可以实现自己的retryAnalyzer: http ://toolsqa.com/selenium-webdriver/retry-failed-tests-testng/
在其他框架的情况下,“不是非常聪明”的解决方案是您的答案,捕获异常并再次尝试直到退出条件匹配。
不幸的是,RestAssured没有机制重试。
也可以使用SpringRetry库和RetryTemplate class。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.