javax.net.ssl.SSLHandshakeException:握手期间远程主机关闭连接支持

时间:2017-02-08 03:46:10

标签: java macos selenium-webdriver appium appium-ios

我正在尝试使用appium(ver.1.5.3)在mac中自动化Android应用程序。我得到下面提到的错误。请帮忙。

  

WebDriverException:javax.net.ssl.SSLHandshakeException:远程主机   握手期间关闭连接构建信息:版本:'未知',   修订版:' 1969d75',时间:' 2016-10-18 09:43:45 -0700'系统信息:   主持人:' AKASHs-MacBook-Pro.local',ip:' 192.168.1.4',os.name:' Mac OS   X',os.arch:' x86_64',os.version:' 10.11.6',java.version:   ' 1.8.0_121'驱动程序信息:driver.version:AndroidDriver at   io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:84)   在   org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)   在   io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:42)   在io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)at   io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1)   在   org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:241)   在   org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:128)   在   org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:141)   在   io.appium.java_client.DefaultGenericMobileDriver。(DefaultGenericMobileDriver.java:38)   在io.appium.java_client.AppiumDriver。(AppiumDriver.java:90)at   io.appium.java_client.AppiumDriver。(AppiumDriver.java:128)at   io.appium.java_client.android.AndroidDriver。(AndroidDriver.java:72)at   com.test1.Test1.setUp(Test1.java:33)at   sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at   sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)   在   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)   在java.lang.reflect.Method.invoke(Method.java:498)at   org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104)   在org.testng.internal.Invoker.invokeMethod(Invoker.java:645)at   org.testng.internal.Invoker.invokeTestMethod(Invoker.java:851)at at   org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1177)at at   org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)   在org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)   在org.testng.TestRunner.privateRun(TestRunner.java:756)at   org.testng.TestRunner.run(TestRunner.java:610)at   org.testng.SuiteRunner.runTest(SuiteRunner.java:387)at   org.testng.SuiteRunner.runSequentially(SuiteRunner.java:382)at at   org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)at at   org.testng.SuiteRunner.run(SuiteRunner.java:289)at   org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)at   org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)at   org.testng.TestNG.runSuitesSequentially(TestNG.java:1293)at at   org.testng.TestNG.runSuitesLocally(TestNG.java:1218)at at   org.testng.TestNG.runSuites(TestNG.java:1133)at   org.testng.TestNG.run(TestNG.java:1104)at   org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)   在org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)at   org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)引起:   javax.net.ssl.SSLHandshakeException:远程主机关闭连接   在握手期间   sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:992)at at   sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)   在   sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)   在   sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)   在   org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:394)   在   org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353)   在   org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:141)   在   org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)   在   org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)   在   org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)   在   org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)   在org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)   在   org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)   在   org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)   在   org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71)   在   org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)   在   org.openqa.selenium.remote.internal.ApacheHttpClient.fallBackExecute(ApacheHttpClient.java:142)   在   org.openqa.selenium.remote.internal.ApacheHttpClient.execute(ApacheHttpClient.java:88)   在   org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:108)   在   org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:64)   在   org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141)   在   io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:69)   ... 37更多引起:java.io.EOFException:SSL对等关闭   sun.security.ssl.InputRecord.read(InputRecord.java:505)错误   at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)   ......还有58个

2 个答案:

答案 0 :(得分:3)

检查您使用的网址,不应包含 https ,而是使用 http 。我试过它对我有用。

答案 1 :(得分:-1)

它与java无关。检查你的证书 ' OpenSSL s_client -connect<> 443'

确保验证码为0 如果它不为零;(20)它可能意味着(我在这里猜测)你可能有一个自签名证书。这意味着您必须将该证书导入Java信任库。