Instruments died while perform sendskey action on uipicker

Hi Team,

Testing an iOS app with 6.1,7.1 on the real device, when trying to perform sendskey action on UIPicker Instruments died in 7.1, It’s working fine with 6.1.
Find Appium logs

info: --> POST /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/element {“using”:“name”,“value”:“Add % Item Tax Override. 1 of 12”}

warn: [DEPRECATED] The name locator strategy has been deprecated and will be removed. Please use the accessibility id locator strategy instead.
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: “au.getElementByName(‘Add % Item Tax Override. 1 of 12’)”
info: [debug] Sending command to instruments: au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-22 11:39:42 +0000 Debug: Got new command 26 from instruments: au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-22 11:39:42 +0000 Debug: evaluating au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-22 11:39:42 +0000 Debug: evaluation finished
info: [debug] [INST] 2015-05-22 11:39:42 +0000 Debug: Lookup returned [object UIAPickerWheel] with the name “Add % Item Tax Override. 1 of 12” (id: 0).
info: [debug] [INST] 2015-05-22 11:39:42 +0000 Debug: responding with:
info: [debug] [INST] 2015-05-22 11:39:42 +0000 Debug: Running system command #27: /Applications/Appium.app/Contents/Resources/node/bin/node /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client.js /tmp/instruments_sock 2,{“status”:0,“value”:{“ELEMENT”:“0”}}…
info: [debug] Socket data received (38 bytes)
info: [debug] Socket data being routed.
info: [debug] Got result from instruments: {“status”:0,“value”:{“ELEMENT”:“0”}}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:“0”},“sessionId”:“35913ec2-af44-453b-a37d-fe988f104193”}
info: <-- POST /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/element 200 870.085 ms - 87 {“status”:0,“value”:{“ELEMENT”:“0”},“sessionId”:“35913ec2-af44-453b-a37d-fe988f104193”}
info: --> POST /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/element/0/value {“value”:[“I”,“t”,“e”,“m”," “,“A”,“s”,“s”,“o”,“c”,“i”,“a”,“t”,“e”,”."," “,“3”,” “,“o”,“f”,” ",“1”,“2”]}
info: [debug] Pushing command to appium work queue: “au.getElement(‘0’).setValueByType(‘Item Associate. 3 of 12’)”
info: [debug] Sending command to instruments: au.getElement(‘0’).setValueByType(‘Item Associate. 3 of 12’)
info: [debug] [INST] 2015-05-22 11:39:43 +0000 Debug: Got new command 27 from instruments: au.getElement(‘0’).setValueByType(‘Item Associate. 3 of 12’)
info: [debug] [INST] 2015-05-22 11:39:43 +0000 Debug: evaluating au.getElement(‘0’).setValueByType(‘Item Associate. 3 of 12’)
info: [debug] [INST] 2015-05-22 11:39:44 +0000 Fail: The target application appears to have died
info: [debug] [INST] 2015-05-22 11:39:44 +0000 Debug: - selectValue is not supported on a picker with undefined values
info: [debug] [INST] Instruments Trace Complete (Duration : 250.839081s; Output : /tmp/appium-instruments/instrumentscli0.trace)
info: [debug] [INSTSERVER] Instruments exited with code 0
info: [debug] Cleaning up after instruments exit
info: [debug] Instruments exited unexpectedly
info: [debug] Shutting down command proxy and ignoring any errors
info: [debug] Closing socket server.
info: [debug] Instruments socket server was closed
info: [debug] Stopping iOS log capture
info: [debug] Reset not set, not ending sim or cleaning up app state
info: [debug] We were in the middle of processing a command when instruments died; responding with a generic error
info: [debug] Cleaning up appium session
info: [debug] Responding to client with error: {“status”:13,“value”:{“message”:“Instruments died while responding to command, please check appium logs”,“name”:“UnknownError”,
“origValue”:“Instruments died while responding to command, please check appium logs”},“sessionId”:null}
info: <-- POST /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/element/0/value 500 2491.327 ms - 230
info: --> GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/source {}
info: <-- GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/source 404 1.061 ms - 40
info: --> GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/orientation {}
info: <-- GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/orientation 404 0.963 ms - 40

info: --> GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/screenshot {}
info: <-- GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/screenshot 404 0.996 ms - 40
info: --> GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/contexts {}
info: <-- GET /wd/hub/session/35913ec2-af44-453b-a37d-fe988f104193/contexts 404 0.928 ms - 40

In my experience, the following statement below usually equates to a crash in your App Under Test.

In Xcode got to Windows → Devices.
Find your Device.
You should see a crash log.
Work with your development team to identify the root cause, and see if you can verify this by hand.
Hope it helps.

Hi Shermaneric,

Thanks for response, App is working fine while testing manually,there is no crash in manual testing.
In Automation it throws an error mentioned above , for reverification i had created a sample app (contains only picker view) just for test, And result is same as above error log.

I am executing scripts on iPod 7.0,7.1 and it’s failing on both devices, And working fine on iPad 6.1.

is this Uiautomation issue? or is it bug in appium? or issue with iPod ?

Find logs of both devices

iPOD 7.1.2 logs

info: --> POST /wd/hub/session/d76a7834-212e-4907-ae74-0e87f3128848/element {“using”:“name”,“value”:“Add % Item Tax Override. 1 of 12”}

warn: [DEPRECATED] The name locator strategy has been deprecated and will be removed. Please use the accessibility id locator strategy instead.
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: “au.getElementByName(‘Add % Item Tax Override. 1 of 12’)”
info: [debug] Sending command to instruments: au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: --> GET /wd/hub/status {}
info: [debug] Responding to client with success: {“status”:0,“value”:{“build”:{“version”:“1.3.6”,“revision”:“004f52f249d3513809e7d0734d9205d1fec19f8e”},“isShuttingDown”:false},“sessionId”:“d76a7834-212e-4907-ae74-0e87f3128848”}
info: <-- GET /wd/hub/status 200 1.880 ms - 178 {“status”:0,“value”:{“build”:{“version”:“1.3.6”,“revision”:“004f52f249d3513809e7d0734d9205d1fec19f8e”},“isShuttingDown”:false},“sessionId”:“d76a7834-212e-4907-ae74-0e87f3128848”}
info: [debug] [INST] 2015-05-26 09:49:07 +0000 Debug: Got new command 11 from instruments: au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-26 09:49:07 +0000 Debug: evaluating au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-26 09:49:07 +0000 Debug: evaluation finished
info: [debug] [INST] 2015-05-26 09:49:07 +0000 Debug: Lookup returned [object UIAPickerWheel] with the name “Add % Item Tax Override. 1 of 12” (id: 0).
info: [debug] [INST] 2015-05-26 09:49:07 +0000 Debug: responding with:
info: [debug] [INST] 2015-05-26 09:49:07 +0000 Debug: Running system command #12: /Applications/Appium1.3.6.app/Contents/Resources/node/bin/node /Applications/Appium1.3.6.app/Contents/Resources/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client.js /tmp/instruments_sock 2,{“status”:0,“value”:{“ELEMENT”:“0”}}…
info: [debug] Socket data received (38 bytes)
info: [debug] Socket data being routed.
info: [debug] Got result from instruments: {“status”:0,“value”:{“ELEMENT”:“0”}}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:“0”},“sessionId”:“d76a7834-212e-4907-ae74-0e87f3128848”}
info: <-- POST /wd/hub/session/d76a7834-212e-4907-ae74-0e87f3128848/element 200 1230.695 ms - 87 {“status”:0,“value”:{“ELEMENT”:“0”},“sessionId”:“d76a7834-212e-4907-ae74-0e87f3128848”}
info: --> POST /wd/hub/session/d76a7834-212e-4907-ae74-0e87f3128848/element/0/value {“value”:[“I”,“t”,“e”,“m”," ",“A”,“s”,“s”,“o”,“c”,“i”,“a”,“t”,“e”]}
info: [debug] Pushing command to appium work queue: “au.getElement(‘0’).setValueByType(‘Item Associate’)”
info: [debug] Sending command to instruments: au.getElement(‘0’).setValueByType(‘Item Associate’)
info: [debug] [INST] 2015-05-26 09:49:08 +0000 Debug: Got new command 12 from instruments: au.getElement(‘0’).setValueByType(‘Item Associate’)
info: [debug] [INST] 2015-05-26 09:49:08 +0000 Debug: evaluating au.getElement(‘0’).setValueByType(‘Item Associate’)
info: [debug] [INST] 2015-05-26 09:49:27 +0000 Fail: The target application appears to have died
info: [debug] [INST] 2015-05-26 09:49:09 +0000 Debug: - selectValue is not supported on a picker with undefined values
info: [debug] [INST] 2015-05-26 09:49:09 +0000 Error: VerboseError: - selectValue is not supported on a picker with undefined values
info: [debug] [INST] Instruments Trace Complete (Duration : 105.448044s; Output : /tmp/appium-instruments/instrumentscli0.trace)
info: [debug] [INSTSERVER] Instruments exited with code 0
info: [debug] Cleaning up after instruments exit
info: [debug] Instruments exi
ted unexpectedly
info: [debug] Shutting down command proxy and ignoring any errors
info: [debug] Closing socket server.
info: [debug] Instruments socket server was closed
info: [debug] Stopping iOS log capture
info: [debug] Reset not set, not ending sim or cleaning up app state
info: [debug] We were in the middle of processing a command when instruments died; responding with a generic error
info: [debug] Cleaning up appium session
info: [debug] Responding to client with error: {“status”:13,“value”:{“message”:“Instruments died while responding to command, please check appium logs”,“name”:“UnknownError”,“origValue”:“Instruments died while responding to command, please check appium logs”},“sessionId”:null}
info: <-- POST /wd/hub/session/d76a7834-212e-4907-ae74-0e87f3128848/element/0/value 500 2360.715 ms – 230

  • IPAD 6.1 logs

info: --> GET /wd/hub/status {}

info: [debug] Responding to client with success: {“status”:0,“value”:{“build”:{“version”:“1.3.6”,“revision”:“004f52f249d3513809e7d0734d9205d1fec19f8e”},“isShuttingDown”:false},“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}

info: <-- GET /wd/hub/status 200 1.292 ms - 178 {“status”:0,“value”:{“build”:{“version”:“1.3.6”,“revision”:“004f52f249d3513809e7d0734d9205d1fec19f8e”},“isShuttingDown”:false},“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}

info: --> POST /wd/hub/session/7caf1c1a-dde7-4484-89d2-cafe87bc673a/element {“using”:“name”,“value”:“Add % Item Tax Override. 1 of 12”}

warn: [DEPRECATED] The name locator strategy has been deprecated and will be removed. Please use the accessibility id locator strategy instead.
info: [debug] Waiting up to 0ms for condition
info: [debug] Pushing command to appium work queue: “au.getElementByName(‘Add % Item Tax Override. 1 of 12’)”
info: [debug] Sending command to instruments: au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-26 09:55:39 +0000 Debug: Got new command 19 from instruments: au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-26 09:55:39 +0000 Debug: evaluating au.getElementByName(‘Add % Item Tax Override. 1 of 12’)
info: [debug] [INST] 2015-05-26 09:55:39 +0000 Debug: evaluation finished
info: [debug] [INST] 2015-05-26 09:55:39 +0000 Debug: Lookup returned [object UIAPickerWheel] with the name “Add % Item Tax Override. 1 of 12” (id: 0).
info: [debug] [INST] 2015-05-26 09:55:39 +0000 Debug: responding with:
info: [debug] [INST] 2015-05-26 09:55:39 +0000 Debug: Running system command #20: /Applications/Appium1.3.6.app/Contents/Resources/node/bin/node /Applications/Appium1.3.6.app/Contents/Resources/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client.js /tmp/instruments_sock 2,{“status”:0,“value”:{“ELEMENT”:“0”}}…
info: [debug] Socket data received (38 bytes)
info: [debug] Socket data being routed.
info: [debug] Got result from instruments: {“status”:0,“value”:{“ELEMENT”:“0”}}
info: [debug] Responding to client with success: {“status”:0,“value”:{“ELEMENT”:“0”},“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}
info: <-- POST /wd/hub/session/7caf1c1a-dde7-4484-89d2-cafe87bc673a/element 200 1664.590 ms - 87 {“status”:0,“value”:{“ELEMENT”:“0”},“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}
info: --> GET /wd/hub/status {}
info: [debug] Responding to client with success: {“status”:0,“value”:{“build”:{“version”:“1.3.6”,“revision”:“004f52f249d3513809e7d0734d9205d1fec19f8e”},“isShuttingDown”:false},“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}
info: <-- GET /wd/hub/status 200 1.064 ms - 178 {“status”:0,“value”:{“build”:{“version”:“1.3.6”,“revision”:“004f52f249d3513809e7d0734d9205d1fec19f8e”},“isShuttingDown”:false},“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}
info: --> POST /wd/hub/session/7caf1c1a-dde7-4484-89d2-cafe87bc673a/element/0/value {“value”:[“I”,“t”,“e”,“m”," “,“A”,“s”,“s”,“o”,“c”,“i”,“a”,“t”,“e”]}
info: [debug] Pushing command to appium work queue: “au.getElement(‘0’).setValueByType(‘Item Associate’)”
info: [debug] Sending command to instruments: au.getElement(‘0’).setValueByType(‘Item Associate’)
info: [debug] [INST] 2015-05-26 09:55:40 +0000 Debug: Got new command 20 from instruments: au.getElement(‘0’).setValueByType(‘Item Associate’)
info: [debug] [INST] 2015-05-26 09:55:40 +0000 Debug: evaluating au.getElement(‘0’).setValueByType(‘Item Associate’)
info: [debug] [INST] 2015-05-26 09:55:41 +0000 Debug: evaluation finished
info: [debug] [INST] 2015-05-26 09:55:41 +0000 Debug: responding with:
info: [debug] [INST] 2015-05-26 09:55:41 +0000 Debug: Running system command #21: /Applications/Appium1.3.6.app/Contents/Resources/node/bin/node /Applications/Appium1.3.6.app/Contents/Resources/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client.js /tmp/instruments_sock 2,{“status”:0,“value”:”"}…
info: [debug] Socket data received (25 bytes)
info: [debug] Socket data being routed.
info: [debug] Got result from instruments: {“status”:0,“value”:""}
info: [debug] Re
sponding to client with success: {“status”:0,“value”:"",“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}
info: <-- POST /wd/hub/session/7caf1c1a-dde7-4484-89d2-cafe87bc673a/element/0/value 200 2037.931 ms - 74 {“status”:0,“value”:"",“sessionId”:“7caf1c1a-dde7-4484-89d2-cafe87bc673a”}
info: --> GET /wd/hub/session/7caf1c1a-dde7-4484-89d2-cafe87bc673a/source {}

HI Team,

If any one have any solution and workaround please let me know.

sorry for the long delay. I don’t really have anything else to add, but it seemed like you also commented here:

Did you see @jlipps and @neto18 replies ?
Sounds like yours is a separate problem, but just in case.
Otherwise, someone else will have to try to help you since I wouldn’t know.
good luck!

I was using sendKeys, but it wasn't working fine (not sure why)

I'll post a couple of lines here, that may help some other people.

// define a webelement with the pickerWheel you want to set the values on, here I'm using xpath
// then use sendKeys() to set the value

WebElement _pickerWheel = driver.findElement(By.xpath("yourpath/UIAPicker[1]/UIAPickerWheel[1]"));
_pickerWheel.sendKeys("value");