Android テスト・プロセスの自動化

Android アプリケーションのテストのプロセスは、 Android Debug Bridge (adb) ユーティリティーと、curl などのコマンド行ツールによって、コマンド行インターフェースを使用して自動化できます。これにより、コマンド行ステートメントをスクリプトやバッチ・ファイルに結合できます。

始める前に

このタスクについて

自動化処理には以下のステップが含まれます。

手順

  1. AUT の最新リリースをインスツルメントします。

    Android アプリケーションは手動でインスツルメントできます。 アプリケーションをモバイル・デバイスまたはエミュレーターからテスト・ワークベンチにアップロードするか、テスト・ワークベンチにある「リストへのアプリケーションの追加」ボタンをクリックします。このプロセスを自動化するには、curl などのツールを使用します。

    1. Rational Test Workbench Eclipse Client を開始します。
    2. テスト・ワークベンチで、「ワークベンチ URL の表示」アイコンワークベンチ URL をクリックし、ワークベンチの URL をメモします。次のステップでは、ワークベンチ URL の IP アドレスとポートが必要になります。
    3. 以下のコマンド行を実行して AUT をインスツルメントします。
      curl -F "appfile=@MyApp.apk" 
      -F "appdescription=My App Description" 
      http://Workbench-URL:port/moeb/service/com.ibm.rational.test.lt.core.moeb.services.buildchain.IBuildChainService/?action=upload

      例:

      curl -F "appfile=@MyExpenses.apk" 
      -F "appdescription=Expense report app" 
      http://192.0.2.24:7878/moeb/service/com.ibm.rational.test.lt.core.moeb.services.buildchain.IBuildChainService/?action=upload

    このステップの結果、以下の 3 つの新規 .apk ファイルが作成されます。

    • R-original apk name.apk - 再生対応アプリケーション
    • T-original apk name.apk - アプリケーションのテスト・エンジン
    • I-original apk name.apk - 記録対応アプリケーション

    .apk ファイル、インスツルメンテーション、 Android ビルド処理の詳細については、Android テストの概要を参照してください。

  2. Android デバイスまたはエミュレーター上に AUT の最新リリースをインストールするには、adb を使用します。再生対応 .apk ファイルとテスト・エンジン .apk ファイルの両方をインストールする必要があります。adb ユーティリティーは通常、 Android-SDK-install-location¥sdk¥platform-tools にインストールされます。
    1. 再生対応 .apk ファイルとテスト・エンジン .apk ファイルを、Eclipse ワークスペースの以下の場所に配置します。
      your-workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds/AUT-uid/R-original-apk-name.apk

      ここで、AUT-uid は、 そのビルド・フォルダーの最後に変更されたサブフォルダーのフォルダー名です。 通常、AUT-uid は long 16 進数です。

      例:

      C:¥workspaces¥rtw86¥.metadata¥.plugins¥com.ibm.rational.test.lt.models.behavior.moeb¥builds¥b01714617a0a34788898e05c9696e0bf¥R-expenses.apk

      同じ場所にはテスト・エンジン・アプリケーションがあります。接頭部の RT に置き換えたものです。

    2. 次のコマンドをコマンド行から実行します。
      adb install -r Workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds//AUT-uid/R-AUT-name.apk
      adb install -r Workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds//AUT-uid/T-AUT-name.apk

      AUT を複数のデバイスまたはエミュレーターにインストールするには、-s (シリアル番号) オプションなどを使用します。

      adb install -s emulator-5556 -r 
      C:¥workspaces¥rtw86¥.metadata¥.plugins¥com.ibm.rational.test.lt.models.behavior.moeb¥builds¥b01714617a0a34788898e05c9696e0bf¥R-expenses.apk
      adb install -s emulator-5558 -r 
      C:¥workspaces¥rtw86¥.metadata¥.plugins¥com.ibm.rational.test.lt.models.behavior.moeb¥builds¥b01714617a0a34788898e05c9696e0bf¥T-expenses.apk

      詳細については、Directing commands to a specific emulator or device を参照してください。

  3. モバイル・テスト・クライアントをインストールし、パッシブ・モードで始動します。パッシブ・モードでは、テスト実行をテスト・ワークベンチでスクリプトやバッチ・ファイルにより制御できます。

    以下の adb コマンドを実行して、モバイル・テスト・クライアントの既存のバージョンをアンインストールし、 クライアントの新規バージョンを再インストールしてから、クライアントをパッシブ・モードに設定します。

    adb uninstall com.ibm.rational.test.mobile.android.client.ui
    adb install "Eclipse client path/com.ibm.rational.test.mobile.android.client.ui-release.apk"
    adb shell am start 
    -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "Workbench-Url" --ez passive_mode “true”

    例:

    adb uninstall com.ibm.rational.test.mobile.android.client.ui
    adb install "C:¥Program Files¥IBM¥IBMIMShared¥com.ibm.rational.test.mobile.android.client.ui-release.apk"
    adb shell am start 
    -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "9.44.55.666:7878" --ez passive_mode “true”
  4. テストをコマンド行モードで実行します。

    これでテストを実行できるようになりました。テストの実行またはコマンド行モードでのスケジュールの詳細については、『コマンド行からのテストまたはスケジュールの実行』を参照してください。

    注: Mac OS X では、コマンド行からテストを実行できません。

    デフォルトでは、テスト・ワークベンチ は、テスト実行要件 (Android OS および Android API) に最適な、最初に接続されたデバイスを選択します。テストを 1 つ以上の特定のデバイスで実行するには、adb -s device ID オプションを使用します。 デバイス ID を見つけるには、テスト・ワークベンチでモバイル・デバイス・エディターを開き、デバイスを選択して、 「詳細プロパティー」で ID を検索します。

    特定のデバイスの選択には、変数を使用することもできます。詳細については、選択したモバイル・デバイスでテストを実行するための変数を定義するを参照してください。

    すべてのテスト・スクリプトは、AUT の特定のバージョンにリンクしています。新規バージョンの AUT をアップロードする場合は、AUT の最新バージョンでテストを実行してください。詳細については、テスト内で変数を定義して最新バージョンのアプリケーションを実行するを参照してください。


フィードバック