calabash-ios物理设备测试,应用程序启动但崩溃

为简单的iPhone应用程序运行calabash-ios黄瓜。 模拟器工作得很好。 在物理设备上尝试时,应用程序会加载,崩溃,然后再次加载,并在循环中再次崩溃。

错误信息:

Unable to start. Make sure you've set APP_BUNDLE_PATH to a build supported by this simulator version Calabash::Cucumber::Launcher::StartError: Time out waiting for UIAutomation run-loop Error while writing to fifo. RunLoop::Fifo::NoReaderConfiguredError. Logfile /var/folders/9s/yttj4cz93m98hqs6bfw2x8xr0000gn/T/run_loop20150522-12657-dr3m49/run_loop.out 2015-05-22 19:58:11 +0000 Fail: An error occurred while trying to run the script. Instruments Trace Complete (Duration : 2.594758s; Output : /var/folders/9s/yttj4cz93m98hqs6bfw2x8xr0000gn/T/run_loop20150522-12657-dr3m49/trace.trace) to run the script. UIAScriptAgentSignaledException (Calabash::Cucumber::Launcher::StartError) /Library/Ruby/Gems/2.0.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:766:in `new_run_loop' /Library/Ruby/Gems/2.0.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:631:in `relaunch' 

脚步:

  1. 在设备上加载app-cal
  2. 使用以下命令在命令行中运行:

    $ DEVICE_TARGET = udid BUNDLE_ID = com.company.app DEVICE_ENDPOINT = http:// ip:37265

 Error while writing to fifo. RunLoop::Fifo::NoReaderConfiguredError 

可能的原因是该设备未启用UIAutomation。 必须启用该设备才能进行开发。 如果设备出现在Xcode的设备窗口(Shift + Command +2)中,则设备已启用开发,您必须通过访问设备的Settings.app> Developer选项卡手动启用设备上测试。

如果您最近升级了iOS版本,我们建议您再次检查UIAutomation设置并重新启动。 通常,升级后,Xcode无法从设备下载调试信息。 看看Xcode的设备窗口。 设备必须没有任何警告。

有时设备会进入不良状态,Xcode无法与之通信。 我们建议尝试使用Apple的仪器与设备进行交互,以清除这种不良状态。

所有这些信息和更多信息都可以在Calabash iOS Hot Topics页面上找到。 https://github.com/calabash/calabash-ios/wiki/Hot-Topics#6-errnoeintr-interrupted-system-call