我们有几个 Cucumber 测试场景,它们使用 RestAssured 框架来访问 HTTPS 端点。当我们运行整套场景时,我们会遇到以下代码行抛出的间歇性“javax.net.ssl.SSLPeerUnverifiedException:peer not authenticated”异常
响应 response = given().log().all().headers(headers).contentType(ContentType.JSON) .with().body(somebody).put(path, testId);
这是一个间歇性问题,在 IntelliJ IDEA 13.1 和 Mac OSX 上的终端中都观察到。我们在 gradle 版本上使用 Jayway RestAssured v2.3.2。
我们访问的服务器有一个自签名证书,我们尝试了以下方法:
1) 手动将证书添加到 Mac 钥匙串 - 仍然断断续续
2) 使用这里提到的 useRelaxedHTTPSValidation() - 仍然断断续续
3)在代码中使用以下内容
RestAssured.config = RestAssured.config().sslConfig(sslConfig().allowAllHostnames());
来自同一篇博客文章 - 所有测试都失败,上述异常始终如一
任何帮助/指针将不胜感激。