Mobile, Testing – Using Calabash or Appium to test your mobile applications on iOS and Android

At a certain point when you are making development for mobile, your have to, like for the desktop, to leverage on test automated tool for mobile application. For mobile, you may find 2 solutions that are widely common in mobile environment : Appium and Calabash.
Our propose was to handle the tests with the same tool in both of the most popular OS : Android and iOS.

With Appium you are not force to give your source to an external company, that is mainly very time consuming. With Appium, as the in-house tester, you can handle test automation on both Android and iOS mobile application.

Appium provide a client-side that is very helpful for non-developer like me for instance.

Appium is also very close to the Selenium RC and Appium server leverage on the selenium api and what else… for Calabash

For Calabash, the interesting point is that you can write your features straight in Gherkin. This is to my point of view, one the best advantage of Calabash. For instance, you can ask our PO (Product Owner) who knows its products and has certainly written the User Stories for the application’s conception to convert them into useful functional scenarios with a minimum learning curve. What more could you ask for?

This non-tutorial covers haphazardly some of the required commands and installation that you may have to do and give a large amount of resources especially some videos in order to help you to install on Mac Appium and calabash for Android and iOS.

Appium

Appium is giving you a "doctor" to inspect your installation and give you the errors to solve
Mobile, Testing - Using Calabash or Appium to test your mobile applications on iOS and Android

When there is no errors in the diagnostic, you can run Appium
Mobile, Testing - Using Calabash or Appium to test your mobile applications on iOS and Android

Calabash

To install calabash for mac

$ curl -sSL https://raw.githubusercontent.com/calabash/install/master/install-osx.sh | bash

to launch calabash

$ calabash-sandbox

To setup calabash for Android

$ calabash-android setup

To generate the feature directory inside the project directory

$ calabash-android gen

to launch calabash for an .apk

$ calabash-android run app-debug.apk --verbose

For iOS, you may use the following command.

To install calabash for iOS

$ calabash-ios setup

To update calabash

$ calabash-sandbox update

To start calabash

$ calabash-sandbox
This terminal is now ready to use with Calabash.
To exit, type 'exit'.

Go to your project (the dir containing the .xcodeproj file)

$ calabash-ios gen

Read more