はじめに
Calabash for Androidは, Ruby製のビヘイビア駆動開発(BDD:Behaviour Driven Development)ツール Cucumberを使ってAndroidアプリをテストできるライブラリ.
Rubyのパッケージ管理システムgem
でインストールできる.
今回の確認環境は次の通り.
- Mac OSX Mavericks 10.9.5
- RVM version 1.26.7
- Ruby 2.2.0p0
準備
Rubyの環境を整えるためにHomebrewをインストールする
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrewが正しくインストールされたかをチェック. エラーが出た場合はメッセージに従う
brew doctor
RVMをインストールする
\curl -sSL https://get.rvm.io | bash -s stable
PATH
を設定するために.bashをリロード
source ~/.bash_profile
RVMのバージョンを確認
rvm version
Rubyの最新バージョンを確認
rvm list known
Ruvyの最新バージョンをインストールし, デフォルトに設定する.
rvm install ruby-2.2.0 --default
PATH
を設定するために.bashをリロード
source ~/.bash_profile
Rubyのバージョンを確認
ruby -v
Rubyのインストールロケーションを確認
which ruby
Calabash for Androidのインストール
gem install calabash-android
AndroidSDKのパスをANDROID_HOME
環境変数で定義
// .bash_profileに下記を追記
export ANDROID_HOME=[AndroidSDKへのパス]
PATH
を設定するために.bashをリロード
source ~/.bash_profile
ANDROID_HOME
が正しく設定できているか確認
echo $ANDROID_HOME
テスト対象のAndroidプロジェクトに移動.
AndroidManifest.xmlがあるディレクトリに移動し下記コマンドを実行.
calabash-android gen
gen
によりcucumberのスケルトンが作成される(作成される各種ファイルについては後述)
calabashテスト実行時にインストールされるテストアプリに付与する署名を指定する.
この署名はテスト対象のアプリと同じ署名とする. 署名の指定は次のコマンドで行う.
# 実行するとカレントディレクトリに.calabash_settingファイルが生成される
calabash-android setup
テストを実行するには同階層で下記コマンドを実行する.
calabash-android run [テスト対象のapk]
実行するとテストが実行される.
cucumberが途中で上手く動作しない場合は-v
オプションを付与することで詳細なログが出力される.
NOTE
calabash-android gen
,calabash-android setup
,calabash-android run
はAndroidManifest.xmlと同階層で実行する.