Original error: unexpected end of stream on Connection{127.0.0.1:4723, proxy=DIRECT hostAddress=/127.0.0.1:4723 cipherSuite=none protocol=http/1.1}

Hi ,
I am getting the following error when trying to initialize IOSDriver , can you please help.
OS : Catalina
Xcode 11.0

This is the initialization line :slight_smile:
AppiumDriver driver = new IOSDriver(new URL(“http://127.0.0.1:4723/wd/hub”), capabilities);

And iOS here are the iOS capabilities ;

    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, properties.getProperty("IOS_AUTOMATION_NAME"));
    capabilities.setCapability("platformName", properties.getProperty("IOS_PLATFORM_NAME"));
    capabilities.setCapability("platformVersion", properties.getProperty("IOS_PLATFORM_VERSION"));
    capabilities.setCapability("deviceName", properties.getProperty("IOS_DEVICE_NAME"));
    capabilities.setCapability("app", properties.getProperty("IOS_APP"));
    capabilities.setCapability(MobileCapabilityType.NO_RESET, properties.getProperty("NORESET"));
    capabilities.setCapability(MobileCapabilityType.FULL_RESET, properties.getProperty("FULLRESET"));
    capabilities.setCapability("useNewWDA", properties.getProperty("USENEWWDA"));
    capabilities.setCapability("clearSystemFiles", "true");
    capabilities.setCapability("simpleIsVisibleCheck", "true");
    capabilities.setCapability("useJSONSource",true);
    capabilities.setCapability("preventWDAAttachments", "true");
    capabilities.setCapability("newCommandTimeout", 180);
    capabilities.setCapability("waitForQuiescence", properties.getProperty("WAITFORQUIESCENCE"));
   capabilities.setCapability("bundleId", "com.zippyyum.Subventory");

[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running TestSuite
Sending Ping Request to 10.150.2.14
10.150.2.14 is reachable
DB Url: jdbc:jtds:sqlserver://10.150.2.14:54275/ – db name: subv_autotest – instance: ;instance=QASQLEXPRESS – db user name: guestauto
08:23:54,677 INFO DriverConfiguration:382 - initialize IOS driver
org.openqa.selenium.SessionNotCreatedException: Unable to create a new remote session. Original error: unexpected end of stream on Connection{127.0.0.1:4723, proxy=DIRECT hostAddress=/127.0.0.1:4723 cipherSuite=none protocol=http/1.1}
Build info: version: ‘3.141.59’, revision: ‘e82be7d358’, time: ‘2018-11-14T08:17:03’
System info: host: ‘CMEs-QA-Mac-mini.local’, ip: ‘fe80:0:0:0:100f:154c:f368:82f7%en0’, os.name: ‘Mac OS X’, os.arch: ‘x86_64’, os.version: ‘10.15.3’, java.version: ‘13.0.2’
Driver info: driver.version: IOSDriver
at io.appium.java_client.remote.AppiumCommandExecutor$1.createSession(AppiumCommandExecutor.java:208)
at io.appium.java_client.remote.AppiumCommandExecutor.createSession(AppiumCommandExecutor.java:217)
at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:239)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:41)
at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)
at io.appium.java_client.ios.IOSDriver.execute(IOSDriver.java:1)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:213)
at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:336)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:131)
at io.appium.java_client.DefaultGenericMobileDriver.(DefaultGenericMobileDriver.java:37)
at io.appium.java_client.AppiumDriver.(AppiumDriver.java:88)
at io.appium.java_client.AppiumDriver.(AppiumDriver.java:98)
at io.appium.java_client.ios.IOSDriver.(IOSDriver.java:90)
at utilities.DriverConfiguration.(DriverConfiguration.java:73)
at utilities.DriverConfiguration.getInstance(DriverConfiguration.java:91)
at utilities.Report.(Report.java:49)
at utilities.Report.getInstance(Report.java:54)
at commonTestBase.TestBase.(TestBase.java:42)
at Login.AccessCodeUserLoginTest.(AccessCodeUserLoginTest.java:13)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:23)
at org.testng.internal.InstanceCreator.instantiateUsingDefaultConstructor(InstanceCreator.java:193)
at org.testng.internal.InstanceCreator.createInstanceUsingObjectFactory(InstanceCreator.java:113)
at org.testng.internal.InstanceCreator.createInstance(InstanceCreator.java:79)
at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:114)
at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:172)
at org.testng.TestClass.getInstances(TestClass.java:102)
at org.testng.TestClass.initTestClassesAndInstances(TestClass.java:82)
at org.testng.TestClass.init(TestClass.java:74)
at org.testng.TestClass.(TestClass.java:39)
at org.testng.TestRunner.initMethods(TestRunner.java:463)
at org.testng.TestRunner.init(TestRunner.java:342)
at org.testng.TestRunner.init(TestRunner.java:295)
at org.testng.TestRunner.(TestRunner.java:181)
at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:618)
at org.testng.SuiteRunner.init(SuiteRunner.java:196)
at org.testng.SuiteRunner.(SuiteRunner.java:127)
at org.testng.TestNG.createSuiteRunner(TestNG.java:1265)
at org.testng.TestNG.createSuiteRunners(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1093)
at org.testng.TestNG.runSuites(TestNG.java:1032)
at org.testng.TestNG.run(TestNG.java:1000)
at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:283)
at org.apache.maven.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:75)
at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:120)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:377)
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:138)
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:465)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:451)
Caused by: java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at io.appium.java_client.remote.AppiumCommandExecutor$1.createSession(AppiumCommandExecutor.java:186)
… 53 more

1 Like

Im hitting this same issue trying to launch Mobile Safari on an iPhone Simulator.
Configuration:
MacOSX Big Sur 11.6.7
Appium v1.22.3
Java 1.8.0_241

Desired Capabilities:
“name”: “iOS_Safari”,
“caps”:
{
“platformName”: “iOS”,
“platformVersion”: “14.2”,
“deviceName”: “iPhone 8”,
“deviceUDID”: “F08D9DAC-3FE7-4CEC-BAA7-E0C0891E6681”,
“automationName”: “XCUITest”,
“wdaStartupRetries”: 4,
“iosInstallPause”:8000,
“wdaStartupRetryInterval”: 20000,
“browserName”: “Safari”,
“autoWebview”: true,
“newCommandTimeout”: 180000,
“showXcodeLog”: true
}

Have you had any luck in the last couple years finding a solution on this?