Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Automated Functional testing for Android based on cucumber
Java Ruby
branch: master

This branch is 1292 commits behind calabash:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
features
instrumentation_backend
.gitignore
AndroidManifest.xml
README.md
build.properties
build.xml

README.md

Calabash-Android

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

Configuration

We assume that you already have the Android SDK installed and that $ANDROID_HOME is pointing to it.

Change the following value in the build.properties file:

  • tested.package_name the package name from your AndroidManifest.xml.
  • tested.main_activity the fully qualified name of your main activity.
  • tested.project.apk path to the APK you want to test.

Notice: Make sure that the app you are trying to test is signed with the key.store certificate.

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

Running test

To run your test:

ant 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 (-e or -d) like so:

ant test -Dadb.device.arg=-e

Predefined steps

The predefined steps are located in the features/step_definitions folder. A compiled list of predefined steps with comments is available here

Something went wrong with that request. Please try again.