Calabash-Android lets you run Cucumber features on you Android device or emulator.
Feature: Login feature Scenario: As a valid user I can log into my app Given I am a valid user And I enter my username And I enter my password And I press "Login" Then I see "Welcome to coolest app ever"
You can run your Calabash features on multiple devices using LessPainful.com
To get get started with Calabash-Android you can either download a zip from here or clone it using the following command.
git clone git://github.com/calabash/calabash-android.git
We assume that you already have the Android SDK installed and that
$ANDROID_HOME is pointing to it.
Change the following value in the
tested.package_namethe package name from your AndroidManifest.xml.
tested.main_activitythe fully qualified name of your main activity.
tested.project.apkpath to the APK you want to test.
Notice: Make sure that the app you are trying to test is signed with the
Writing a test
The Cucumber features goes in the
features library and should have the ".feature" extension.
You can start out by looking at
features/test_dummy.feature. You can extend this feature or make your own using some of the predefined steps that comes with Calabash
To run your test:
To specify on which device the test should run (if you have both an emulator running and a device attached), pass the
adb.device.arg system property (
-d) like so:
ant test -Dadb.device.arg=-e
The predefined steps are located in the
features/step_definitions folder. A compiled list of predefined steps with comments is available here