Skip to content

DominikDary/greenhouse-android-calabash

Repository files navigation

Calabash-Android

Calabash-Android lets you run Cucumber features on your 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.

Installation

Prerequisites

You need to have cucumber, Ruby 1.9.2+ installed, and a recent RubyGems installation.

You can install cucumber like this:

gem install cucumber

The json gem is also required

gem install json

You should have the Android SDK install and $ANDROID_HOME should be pointing to it.

Installation

You can obtain the newest version of Calabash-Android either by downloading a zip from the Downloads sections or cloning it using the following command

git clone git://github.com/calabash/calabash-android.git

And to fetch calabash-js which is the a shared project with calabash-ios you have to run

git submodule init
git submodule update

Configuration

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages