start_test_server_in_background抛出NoMethodError:未定义的方法' path'为零:NilClass

时间:2016-05-27 19:31:20

标签: calabash calabash-ios

我有两台机器可以正常工作,但我正在配置的最新机器无法在控制台中启动测试服务器。

截图:
Console output

我整天都在反对它,我无法弄清楚出了什么问题。是否有任何明显的遗漏导致这种情况?

更新 这个问题,至少对我来说,是由于我的APP_BUNDLE_PATH中有一个相对路径引起的。我有APP_BUNDLE_PATH ="〜/ Documents / workspace /..."。一旦我完成了完整的显式路径,我就不再尝试启动测试服务器。

1 个答案:

答案 0 :(得分:0)

我们正在跟踪此错误:

nil path when preparing simulator in compatible arches check when APP was not set correctly

在修复之前,请设置APP环境变量。

$ APP=./path/to/my.app calabash-ios console

更新

问题已在开发分支中修复,将在run_loop 2.3.1中提供。

问题的原因是APPAPP_BUNDLE_PATHBUNDLE_ID的某些组合对于模拟器目标不正确。

或者:

  1. APP或APP_BUNDLE_PATH不指向存在的目录。如果要设置其中一个变量,请确保.app包存在。
  2. 您正在定位模拟器,将上述三个变量中的一个设置为捆绑标识符,例如APP = com.example.MyApp。在定位模拟器时使用捆绑标识符无效。
  3. 如果您在启动控制台时未明确设置任何变量,请查看它们是否已在环境中定义。

    $ echo $APP
    $ echo $APP_BUNDLE_PATH
    $ echo $BUNDLE_ID
    

    如果未定义它们并且您仍然收到此错误,请打开调试日志记录的问题。

    $ DEBUG=1 calabash-ios console
    > start_test_server_in_background
    
    $ calabash-ios console
    > verbose
    > start_test_server_in_background