我正在努力使用放心自动化 API 测试。我有一个 API,如果我们使用 http 调用该 API,那么服务器将返回响应代码为 302,位置返回相同的 URL,但使用 https。 我编写了以下代码:
RequestSpecification httprequest= RestAssured.given().relaxedHTTPSValidation();
Response response= httprequest.request(Method.GET, uri);
在执行上述操作时,系统抛出错误javax.net.ssl.SSLHandshakeException
我已经搜索了很多,但没有适当的解决方案。
我对Rest-Assured感到头疼。我不确定您是否给了我们足够的时间来继续这里,但据我所知,您正在使用宽松的 HTTPS 验证进行 HTTPS 调用,但您的 API 正在强制执行 SSL。当您通过HTTP发送时,它可以工作,因为它无论如何都不安全并且不强制执行安全性。尝试像这样为 HTTPS 运行它:
RequestSpecification httprequest= RestAssured.given();
Response response= httprequest.request(Method.GET, uri);
仅当您故意尝试不安全的连接并希望绕过警告(就像使用自签名证书或 http(一样时,才需要.relaxedHTTPSValidation()
。