Calabashでテスト自動化してみた(2)

HC矢野です。

前回は、セットアップまで終わりましたので、
今回は、AndroidSDKにあるサンプルを使用して、
簡単なテスト(ボタンをタップする)を実行しようと思います。

使用するのは、AndroidSDKに含まれるAppNavigationサンプルアプリケーションです。
各API(Android 4.1.2であればAPI 16など、今回は4.1.2を想定)に対応したものがあります。
もし、ない場合は、Android SDK Managerを使用して、DLをしてください。下図のSamples for SDKがそれらになります。

AndroidSDK

具体的な場所は、AndroidSDKを、C:直下で展開したとすると、
C:\android-sdk\samples\android-16\AppNavigationになります。

1.Eclipseへの取り込み
File>Import>Android>Existing Android Code Into Workspaceを選択し、
Root DirectoryにC:\android-sdk\samples\android-16\AppNavigationを指定して、
ワークスペースにコピーを作成するオプションを選択してから、Finishボタンをクリックします。

2.取り込み後のコンパイル
作成されたプロジェクトを選択して右クリックし、Propaties選択、
表示された画面の左メニューからAndroidを選択し、右側リストから、Android4.1.2を選択します。
続いて、左メニューのJava Build Pathを選択し、Order and Exportタブを選択して、
Select Allボタンをクリックして、OKボタンをクリックします。
自動Build設定をしているときは、自動的にビルドされます。そうでない場合は、
Project>Clean後、Build Projectでビルドしてください。

3.アプリ実行
実機をUSBケーブルで接続してから、Run>Run as>Android Applicationを選択して起動します。※画像はエミュレーターです。

AppNav

4.calabashのセットアップ
Windows>アクセサリ>コマンドプロンプトを起動します。
AppNavHomeActivityプロジェクトのあるディレクトリ(C:\Users\XXXX\workspace\AppNavHomeActivity)に
移動してから、「calabash-android gen」を実行します。
dirコマンド実行するとfeaturesというフォルダが作成されていると思います。

5.スクリプトの変更
Eclipseに戻って、プロジェクトを選択して右クリック>Refreshを選択すると、
Featuresフォルダが表示されます。配下に、my_first.featureがありますので、
クリックして、以下のように変更します。

Feature: Login feature
Scenario: As a valid user I can log into my app
 When I press "Simple Up Navigation"
 Then I go back
 Then I press "Content Category"
 Then I go back

6.Calabashの実行
実機を接続した状態で、コマンドプロンプトに戻り、
「calabash-android run bin\AppNavHomeActivity.apk」を実行してください。
アプリが起動し、「Simple Up Navigation」がタップされ、バックキーが押されて、
最初の画面に戻り、「Content Category」がタップされ、バックキーが押されて、
最初の画面に戻る。という動作がされたと思います。

次回は、Calabashでやれることについて記載したいと思います。

このエントリーをはてなブックマークに追加

1件のコメント

ただいまコメントは受け付けていません。