Search code examples
cucumbercalabashcalabash-ioscircleci

calabash-ios in CircleCI how to find App Bundle Path


I am trying to run calabash-ios in CircleCI. I am getting the following error. Is there a way to find out the path or file location that should be used? Error message is attached below.

 Error... Unable to find APP_BUNDLE_PATH.
  Cannot find a built app that is linked with calabash.framework
  Please build your app from Xcode
  You should build your calabash target.

  Alternatively, specify APP_BUNDLE_PATH in features/support/01_launch.rb
  This should point to the location of your built app linked with calabash.
  (RuntimeError)
  /Library/Ruby/Gems/2.0.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launch/simulator_launcher.rb:245:in `app_bundle_or_raise'
  /Library/Ruby/Gems/2.0.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:569:in `relaunch'
  /Users/distiller/iOSAppTest/features/support/01_launch.rb:27:in `Before'

I have tested it locally on my machine and it works fine, but it isn't working on CircleCI.


Solution

  • http://calabashapi.xamarin.com/ios/file.ENVIRONMENT_VARIABLES.html#label-APP+and+APP_BUNDLE_PATH

    This should point to the location of your built app linked with calabash.

    The gist is that you need to tell Calabash where the .app bundle is. I am not familiar with CircleCI, so I don't have an specific advice.

    Locally you would do this:

    $ APP=/path/to/the/App.app cucumber
    

    Can you update your answer with the exact command you are using to launch cucumber?