Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

AndroidStudioでテストを実行する

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Firebase Test Lab は、Android アプリをテストするためのクラウドベースのインフラストラクチャを提供し、インストルメント化されたテストを実行してテスト結果を確認するための Android Studio との完全な統合を備えています。

このガイドでは、インストルメント化されたテストを Android Studio で変更して、Test Lab と統合して実行できるようにする方法について説明します。 Android Studio UI から Test Lab を使用してテスト マトリックスを作成し、インストルメント化されたテストを実行し、テスト結果を表示する手順については、Firebase Test Lab でテストを実行するを参照してください。

スクリーンショットをキャプチャする

Test Lab は、インストルメント化されたテストの実行時にスクリーンショットをキャプチャするためのサポートを提供します。スクリーンショットをキャプチャする方法については、スクリーンショット ライブラリをプロジェクトに追加するを参照してください。

Espresso Test Recorder を使用してテストを作成する

Espresso テスト レコーダー ツールを使用すると、テスト コードを記述することなく、アプリの UI テストを作成できます。デバイスとの対話を記録し、アサーションを追加して、アプリの特定のスナップショットで UI 要素を検証できます。次に、Espresso テスト レコーダーは保存された記録を取得し、対応する Espresso UI テストを自動的に生成します。このテストを実行して、Test Lab でアプリをテストできます。

詳細については、Espresso テスト レコーダーを使用した UI テストの作成を参照してください。

Test Lab のインストルメント化されたテストの動作を変更する

Test Lab には、インストルメント化されたテストに追加できるシステム変数が用意されているため、Test Lab で実行した場合と、独自のテスト デバイスまたはエミュレーターで実行した場合とで異なる動作をさせることができます。

次のコード例では、システム プロパティfirebase.test.labを読み取り、テストが Test Lab で実行されている場合は文字列testLabSettingtrueに設定します。次に、この文字列の値を使用して、追加のステートメントを実行するかどうかを制御します。

Java

String testLabSetting = Settings.System.getString(getContentResolver(), "firebase.test.lab");
if ("true".equals(testLabSetting)) {
    // Do something when running in Test Lab
    // ...
}

Kotlin+KTX

val testLabSetting = Settings.System.getString(contentResolver, "firebase.test.lab")
if ("true" == testLabSetting) {
    // Do something when running in Test Lab
    // ...
}