Firebase Test Lab for Android
Google データセンターでホストされている端末上でアプリをテストします。
主な機能
| 実際の端末でテストする | Test Lab を使用して、Google データセンターにインストールされ、動作している端末上でアプリを動作できます。Test Lab は、特定の端末構成(固有の Android API レベルと固有のロケール設定を実行している Nexus 5 など)でのみ発生する問題を検出するのに役立ちます。 |
| アプリテストを記述していない場合でもアプリテストを実行する | Robo テストを使用してアプリの問題を検出できるので、アプリテストを記述していない場合でもアプリをテストできます。Robo テストは、アプリのユーザー インターフェースの構造を分析してから調査し、ユーザー アクティビティを自動的にシミュレートします。アプリのインストゥルメンテーション テストを記述すれば、Test Lab でそれらのテストも実行できます。 |
| ワークフローの統合 | Test Lab は、Android Studio、Firebase console、gcloud コマンドラインと統合されます。継続的インテグレーション(CI)システムで Test Lab を使用することもできます。 |
仕組み
Test Lab は、Google データセンターで動作している端末を使用してアプリをテストします。テストに使用される端末は、最新の Android API レベルや指定したロケール設定でフラッシュされた実際の製品端末なので、現実世界のさまざまな端末と端末構成に対してアプリのロードテストを実行できます。
データセンター内の端末

Test Lab では、Firebase console、Android Studio、または gcloud コマンドライン インターフェースからアプリを実行するように記述された Espresso、Robotium、または UI Automator 2.0 インストゥルメンテーション テストを実行できます。Robo テストを使用して Firebase console または gcloud コマンドラインからアプリを自動的に実行することもできます。
Robo テストは、ログをキャプチャし、関連する注釈付きスクリーンショットのセットを表示する「アクティビティ マップ」を作成します。さらに一連のスクリーンショットから動画を作成し、実行したユーザー操作をシミュレートして表示します。詳しくは Robo テストについての記事をご覧ください。
実装のプロセス
| インストゥルメンテーション テストを実行する場合は、アプリ固有のテストを記述します。 | アプリのインストゥルメンテーション テストを作成する場合は、テスト結果がわかりやすくなるように、必ずアプリテスト プロジェクトに Test Lab スクリーンショット ライブラリを追加してください。 | |
| テスト環境とテスト マトリックスを選択します。 | 選択したテスト環境(Firebase console、Android Studio、または gcloud コマンドライン インターフェース)を使用し、端末、API レベル、ロケール、画面の向きの組み合わせを選択してテスト マトリックスを定義します。 | |
| テストを実行し、テスト結果を確認します。 | テスト マトリックスのサイズによっては、Test Lab でテストを完了するのに数分かかることがあります。テストが完了すると、Firebase console でテスト結果を確認できます。 |
次のステップ
- Robo Test でアプリのテストを開始します。このテストは数分で実行可能で、コーディングは不要です。
- Firebase console でアプリをテストします。Firebase console から Firebase Test Lab for Android を使用する方法についての記事をご覧ください。
- gcloud コマンドライン環境からアプリをテストします。コマンドラインから Test Lab を使用する方法についての記事をご覧ください。
- Android Studio 2.0 でアプリをテストします。Firebase Android Codelab の Test Lab 手順をご覧ください。
- インストゥルメンテーション テストで Test Lab スクリーンショット ライブラリを使用します。

