Exception caught while executing lockDevice: Unexpected exception while trying to process xml rpc request

Hi Tom,

Please take a look of this stackTrace.
I got this error in this line
driver = new SeeTestIOSDriver<>(new URL(“http://” + host + “:” + port), dc);

My solution :=> I just restart the device and also restart AppiumStudio. then automatically solved

I am just want to know the root cause of this problem.

FAILED CONFIGURATION: @BeforeTest setUp
com.experitest.client.InternalException: Exception caught while executing lockDevice: Unexpected exception while trying to process xml rpc request
at com.experitest.client.JavaClientInternals.executeInternally(JavaClientInternals.java:249)
at com.experitest.client.JavaClientInternals.waitForDevice(JavaClientInternals.java:364)
at com.experitest.client.Client.waitForDevice(Client.java:234)
at com.experitest.appium.STClientFacade.(STClientFacade.java:178)
at com.experitest.appium.STIOSClientFacade.(STIOSClientFacade.java:15)
at com.experitest.appium.SeeTestIOSDriver.(SeeTestIOSDriver.java:82)
at com.dublabs.helper.DublabsController.start(DublabsController.java:116)
at com.dublabs.test.base.BaseTest.setUp(BaseTest.java:149)
at com.dublabs.test.notification.BaseNotifications.setUp(BaseNotifications.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:523)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:224)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:146)
at org.testng.TestRunner.beforeRun(TestRunner.java:626)
at org.testng.TestRunner.run(TestRunner.java:594)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:380)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:375)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
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:1301)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1226)
at org.testng.TestNG.runSuites(TestNG.java:1144)
at org.testng.TestNG.run(TestNG.java:1115)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:230)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:76)

SKIPPED CONFIGURATION: @AfterTest tearDown
SKIPPED: Notifications_VerifyAllConfiguredSourceKeys
com.experitest.client.InternalException: Exception caught while executing lockDevice: Unexpected exception while trying to process xml rpc request
at com.experitest.client.JavaClientInternals.executeInternally(JavaClientInternals.java:249)
at com.experitest.client.JavaClientInternals.waitForDevice(JavaClientInternals.java:364)
at com.experitest.client.Client.waitForDevice(Client.java:234)
at com.experitest.appium.STClientFacade.(STClientFacade.java:178)
at com.experitest.appium.STIOSClientFacade.(STIOSClientFacade.java:15)
at com.experitest.appium.SeeTestIOSDriver.(SeeTestIOSDriver.java:82)
at com.dublabs.helper.DublabsController.start(DublabsController.java:116)
at com.dublabs.test.base.BaseTest.setUp(BaseTest.java:149)
at com.dublabs.test.notification.BaseNotifications.setUp(BaseNotifications.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:523)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:224)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:146)
at org.testng.TestRunner.beforeRun(TestRunner.java:626)
at org.testng.TestRunner.run(TestRunner.java:594)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:380)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:375)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
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:1301)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1226)
at org.testng.TestNG.runSuites(TestNG.java:1144)
at org.testng.TestNG.run(TestNG.java:1115)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:230)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:76)

===============================================
Default test
Tests run: 1, Failures: 0, Skips: 1
Configuration Failures: 1, Skips: 1

Count: 0

===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 1
Configuration Failures: 1, Skips: 1

Hi Rishabh,

I’d recommend you to switch the standard Appium Client instead of using the old (depracted) SeeTestIOSDriver

for more info

https://docs.experitest.com/display/public/TD/Updating+Appium+Studio+from+10.8+to+10.9+and+Higher

1 Like

Hi @Tom

As you said that change the driver class from SeeTestAndroidDriver/SeeTestIOSDriver to AndroidDriver/IOSDriver

After changing what found, Some methods of swipe is discontinued in this class

Before that there are 3 methods for class.

So please tell me the alternate solution for this methods in IOSDriver

driver().swipe(SwipeElementDirection.DOWN, 150, 3000);
or
driver().swipeWhileNotFound(By.xpath("//*[contains(@text,‘Settings’)][@hidden=‘false’]"), 500,SwipeElementDirection.DOWN, 300, 30, 6, false);

Hi @Tom,

I find a link of your comment

So first i have tried it in Appium Studio (https://docs.experitest.com/display/public/SA106/SwipeWhileNotFound)

Record and play system is working file.

But when i copy/paste the code in my workspace

Then it is giving error :-
org.openqa.selenium.WebDriverException: javascript error (javascript error. An unknown server-side error occurred. status=‘false’. Failed to complete internal method: ‘swipeWhileNotFound args: [Down, 500, 1000, 300, //[contains(@text,‘Settings’)][@hidden=‘false’], 0, 30, 6, true]’, details: Error in element search '//[contains(@text,‘Settings’)][@hidden=‘false’]’. Object repository doesn’t contain: 300//*[contains(@text,‘Settings’)][@hidden=‘false’]) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 303 milliseconds
Build info: version: ‘2.53.0’, revision: ‘35ae25b1534ae328c771e0856c93e187490ca824’, time: ‘2016-03-15 10:43:46’
System info: host: ‘sys52’, ip: ‘192.168.1.122’, os.name: ‘Windows 8.1’, os.arch: ‘amd64’, os.version: ‘6.3’, java.version: ‘1.8.0_101’
Driver info: io.appium.java_client.ios.IOSDriver
Capabilities [{device.majorVersion=10.x, dontGoHomeOnQuit=false, device.os=iOS, noReset=false, dontStopAppOnReset=false, reservationDuration=240, reportFormat=xml, fullReset=false, platform=ANY, desired={bundleId=com.dubmenow.pbd.bermudacollegetest, reportDirectory=reports, reportFormat=xml, udid=213121205963e69c6a8f8da9c17aa2d2a7f357fd, platformName=iOS, testName=Untitled}, device.serialNumber=213121205963e69c6a8f8da9c17aa2d2a7f357fd, device.version=10.3.2, automationName=XCUITest, reportDirectory=reports, autoWebview=false, udid=213121205963e69c6a8f8da9c17aa2d2a7f357fd, platformName=iOS, testName=Untitled, device.screenSize=750x1334, useKeystore=false, device.manufacture=Apple, instrumentApp=false, device.category=PHONE, bundleId=com.dubmenow.pbd.bermudacollegetest, autoDismissAlerts=false, reportUrl=C:\Users\admin\appiumstudioenterprise-reports\reports\test9, app.package=com.dubmenow.pbd.bermudacollegetest, app.version=9.0.0, keystorePath=~/.android/debug.keystore, waitForDeviceTimeout=120000, device.model=iPhone 6s, device.name=iPhone, projectName=, autoAcceptAlerts=false}]
Session ID: 2c887583-755a-4a05-981e-37efc6da459d

Then i thought that it is a old jar but when i saw the maven repository, I got this


and i m using it

Please reply as soon as possible

@Tom plz do something
Because i m blank regarding this issue

Rishabh, are you using version 10.8? try to upgrade to a newer version (current version is 11.2.41) and in your project upgrade all dependencies/references to newer ones (no idea how to do this on Eclipse, I’m using C#)

No . I m using latest version of Appium Studio.11.2.45

I don’t have idea if it’s related or not but in your pom.xml file says that AppiumStudio version is 10.8, did you upgrade all jar files in the project?