Robo テストは、Firebase Test Lab に統合されているテストツールです。Robo テストはアプリのユーザー インターフェース(UI)の構造を分析し、ユーザーのアクティビティを自動的にシミュレートして体系的な調査を行います。Robo テストでは、特定のデバイス構成で同一の設定を使用してアプリをテストするときに、常に同じユーザー アクティビティを同じ順序でシミュレーションします。この再現可能なテスト アプローチにより、Robo テストを使用しバグの修正の検証や回帰テストを行うことができます。
Robo テストは、ログファイルをキャプチャして一連の注釈付きスクリーンショットを保存します。次にスクリーンショットから動画を作成し、実行したユーザー操作をシミュレートして表示します。これらのログ、スクリーンショット、動画は、アプリのクラッシュの根本原因を特定するのに役立ちます。これらの Robo テスト機能は、アプリの UI に関する問題を把握する際にも役立ちます。
Robo テストに加えて、Robo テストの機能である Robo スクリプトを使用してテストをカスタマイズできます。詳細については、Robo スクリプトの実行をご覧ください。
Robo テストクロールの統計情報
Robo テストの結果の解釈に役立つように、Robo テストでは各テストクロール中に統計情報が記録されます。Test Lab では、テストの結果ページの [Robo テスト] タブの上部に統計情報が表示されます。
操作: クロール中に行われた操作の総数。Robo スクリプト操作、モンキー アクション、Robo ディレクティブが含まれます。
スクリーン数: クロール中にアクセスされた個別のスクリーンの数。
また、Test Lab では統計情報を使用して、クロールグラフの形式での Robo テストの視覚表現も作成されます。グラフには、スクリーンがノードとして、操作がエッジとして表示されます。スクリーン間のエッジをたどることで、Robo テストがクロール全体でアプリをどのように移動したかを知ることができます。
Robo テストのタイムアウト
アプリの UI の複雑さによっては、詳細な UI インタラクションのセットを Robo テストで完了するのに 5 分以上かかることがあります。テストのタイムアウトは、通常のアプリで 120 秒(2 分)以上、中程度の複雑さのアプリで 300 秒(5 分)以上に設定することをおすすめします。タイムアウトのデフォルト値は、Firebase コンソールからテストを実施した場合は 300 秒(5 分)、gcloud コマンドラインからテストを実施した場合は 900 秒(15 分)です。
アプリの起動タイムアウト エラー
アプリの起動に時間がかかると、Robo テストはエラーをスローする場合があります。この場合、アプリをクロールできなくなります。これは起動時間が非常に長い場合にのみ発生する問題なので、アプリを変更して起動時間を短縮するだけで問題を解決できます。
Robo スクリプトによる詳細な制御
時には、テストに更なる制御が必要な場合があります。たとえば、一般的なユーザー行動をテストしたいときや、ユーザー名やパスワードなどの特定の UI 入力を表示したいときなどです。これには、Robo スクリプトが役立ちます。Robo スクリプトの詳細については、Robo スクリプトの実行と Robo スクリプト リファレンス ガイドをご覧ください。
次のステップ
- Robo スクリプトを使用して、テストをカスタマイズします。