Cannot Run Test on Appium 1.6.1

Hi guys,

While trying to run test of iOS application on real device (iPhone 5s, iOS 10.0.1), I received the follow error in terminal:

Appium] Welcome to Appium v1.6.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
[HTTP] --> POST /wd/hub/session {“capabilities”:{“desiredCapabilities”:{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},“requiredCapabilities”:{}},“desiredCapabilities”:{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},“requiredCapabilities”:{}}
[debug] [MJSONWP] Calling AppiumDriver.createSession() with args: [{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},{},{“desiredCapabilities”:{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},“requiredCapabilities”:{}},null,null]
[Appium] Creating new XCUITestDriver session
[Appium] Capabilities:
[Appium] platformVersion: ‘10.0.1’
[Appium] automationName: ‘XCUITest’
[Appium] bundleId: ‘com.vf.selfservis’
[Appium] udid: ‘’
[Appium] platformName: ‘iOS’
[Appium] deviceName: ‘Mais’s iPhone’
[Appium] fullReset: true
[debug] [XCUITest] XCUITestDriver version: 2.2.0
[BaseDriver] Session created with session id: f1887f61-f4e4-4076-bc87-bb153123fb67
[debug] [XCUITest] Xcode version set to ‘8.1’
[debug] [XCUITest] iOS SDK Version set to ‘10.1’
[XCUITest] Error: Command ‘idevice_id -l’ errored out: Error: spawn idevice_id ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
at ChildProcess. (…/…/lib/teen_process.js:32:14)
at emitOne (events.js:96:13)
at ChildProcess.emit (events.js:188:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:213:12)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
Error: Command ‘idevice_id -l’ errored out: Error: spawn idevice_id ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
at ChildProcess. (…/…/lib/teen_process.js:32:14)
at emitOne (events.js:96:13)
at ChildProcess.emit (events.js:188:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:213:12)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
[debug] [XCUITest] Running iOS simulator reset flow
[debug] [XCUITest] Full reset is on. Cleaning simulator
[MJSONWP] Encountered internal error running command: Error: Command ‘idevice_id -l’ errored out: Error: spawn idevice_id ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
at ChildProcess. (…/…/lib/teen_process.js:32:14)
at emitOne (events.js:96:13)
at ChildProcess.emit (events.js:188:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:213:12)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
[HTTP] <-- POST /wd/hub/session 500 1971 ms - 521
[HTTP] --> POST /wd/hub/session {“desiredCapabilities”:{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},“requiredCapabilities”:{}}
[debug] [MJSONWP] Calling AppiumDriver.createSession() with args: [{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},{},null,null,null,null,null]
[Appium] Creating new XCUITestDriver session
[Appium] Capabilities:
[Appium] platformVersion: ‘10.0.1’
[Appium] automationName: ‘XCUITest’
[Appium] bundleId: ‘com.vf.selfservis’
[Appium] udid: ‘’
[Appium] platformName: ‘iOS’
[Appium] deviceName: ‘Mais’s iPhone’
[Appium] fullReset: true
[debug] [XCUITest] XCUITestDriver version: 2.2.0
[BaseDriver] Session created with session id: 1821dd54-66a8-47b8-b93c-eb35d4301702
[debug] [XCUITest] Xcode version set to ‘8.1’
[debug] [XCUITest] iOS SDK Version set to ‘10.1’
[XCUITest] Error: Command ‘idevice_id -l’ errored out: Error: spawn idevice_id ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
at ChildProcess. (…/…/lib/teen_process.js:32:14)
at emitOne (events.js:96:13)
at ChildProcess.emit (events.js:188:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:213:12)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
Error: Command ‘idevice_id -l’ errored out: Error: spawn idevice_id ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
at ChildProcess. (…/…/lib/teen_process.js:32:14)
at emitOne (events.js:96:13)
at ChildProcess.emit (events.js:188:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:213:12)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
[debug] [XCUITest] Running iOS simulator reset flow
[debug] [XCUITest] Full reset is on. Cleaning simulator
[MJSONWP] Encountered internal error running command: Error: Command ‘idevice_id -l’ errored out: Error: spawn idevice_id ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
at ChildProcess. (…/…/lib/teen_process.js:32:14)
at emitOne (events.js:96:13)
at ChildProcess.emit (events.js:188:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:213:12)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
[HTTP] <-- POST /wd/hub/session 500 167 ms - 521
[HTTP] --> POST /wd/hub/session {“capabilities”:{“desiredCapabilities”:{“platformVersion”:“10.0.1”,“automationName”:“XCUITest”,“bundleId”:“com.vf.selfservis”,“udid”:"",“platformName”:“iOS”,“deviceName”:“Mais’s iPhone”,“fullReset”:true},“requiredCapabilities”:{}}}
[debug] [MJSONWP] Bad parameters: BadParametersError: Parameters were incorrect. We wanted {“required”:[“desiredCapabilities”],“optional”:[“requiredCapabilities”,“capabilities”,“sessionId”,“id”,“sessionId”,“id”,“sessionId”,“id”]} and you sent [“capabilities”]
[HTTP] <-- POST /wd/hub/session 400 4 ms - 205

Please help.

XCode 8.1
iPhone 5S (iOS 10.0.1)
Appium 1.6.1

What happens when you run ‘idevice_id -l’ on the command line? Maybe that would provide additional information?