Androidのデバイステスト

BitriseのAndroid仮想デバイステストソリューションを使用すると、独自のデバイスをセットアップして登録しなくても、エミュレーターでUIテストを実行できます。

制限事項

全体的なビルド時間によって制限される場合があります。また、1つのビルドに含めることができるのは1つだけであることに注意してください[ベータ版]仮想デバイスのテスト1種類のテストを実行するステップ(instrumentationroboまたgameloop)。

当社のデバイステストソリューションは、 Firebaseテストラボ。結果のログ、ビデオ、スクリーンショットはBitriseで見つけることができます。

テストの実行

Bitriseでは、3つの異なるテストタイプから選択できます。

  • robo(Bitriseのデフォルトのテストタイプ)。

  • 計装。

  • ゲームループ。

これらのテストタイプの違いについて知りたい場合は、以下をご覧ください。Firebaseのドキュメント。

ロボテストとインストルメンテーションテストのワークフローの構成にはわずかな違いがあるので、別々に見てみましょう。

ロボテストの実行

  1. 使用するワークフローをワークフローエディターで開きます。

  2. 追加しますAndroidビルド後のステップAndroidユニットテスト APKをエクスポートする手順。

  3. 追加しますDebugへのタスク変異体ステップ入力フィールド。これにより、ビルドのAPKパスを含むenv変数が準備されます。次のステップでこのenv変数が必要になります。

    Device testing for Android
  4. 追加[ベータ版] Android向け仮想デバイステストAndroidビルドステップの次のステップ。

  5. をセットするAPK path入力フィールド。

  6. 確認してくださいrobo選択されていますテストタイプ

  7. にテストデバイスのタイプを追加しますテストデバイス入力フィールド。デフォルトとは異なるデバイスを選択する場合、入力の形式は次のようになります。deviceIDversionlanguageorientationで区切られます ,。利用可能なデバイスのリストを見つけるここ

    Device testing for Android
  8. ビルドを開始し、テスト結果を確認する

roboテストを成功させるためのRoboディレクティブを使用したユーザー入力の設定

roboテストを成功させるためにアプリで特定のユーザー操作が必要な場合は、Robo Directives入力フィールドを使用して、これらの必要な入力を設定できます。たとえば、アプリの特定のUI要素は、ログインに必要なユーザー入力(ユーザー名とメールアドレス)が入力されている場合にのみ、ロボテストにアクセスできます。

  1. ワークフローの[ベータ版] Android向け仮想デバイステストステップをクリックします。

  2. [ロボテスト]セクションをクリックします。

  3. Roboディレクティブ入力フィールドを見つけて、必要なユーザー入力ディレクティブを設定します。

    • キーと値のペアのコンマ区切りリストを提供します。ここで、キーはターゲットUI要素のAndroidリソース名であり、値はテキスト文字列です。 EditTextフィールドはサポートされていますが、WebViewUIエレメントのテキストフィールドはサポートされていません。たとえば、カスタムログインに次のパラメータを使用できます。

      username_resource,username,ENTER_TEXT
      password_resource,password,ENTER_TEXT
      loginbtn_resource,,SINGLE_CLICK
    • 行ごとに1つのディレクティブ、パラメーターは、文字で区切られます。例:ResourceName、InputText、ActionType。

    Device testing for Android

指定した入力に基づいて、ロボテストを正常に実行し(特定のユーザー入力でのみアクセスできるページでも)、[テストレポート]ページでテスト結果を確認できます。テスト結果は、次のようになります。

  • スクリーンショット。

    録画したビデオ。

    ログ。

    ファイル。

これは、成功したroboテストのスクリーンショットです。ここでは、最初に電子メールフィールドとパスワードフィールドにRoboディレクティブから事前定義されたディレクティブを入力することにより、roboテストがマイアプリケーションに到達しました。

Device testing for Android

計装テストの実行

  1. 使用するワークフローをワークフローエディターで開きます。

  2. 追加しますUIテスト用のAndroidビルドワークフローに進みます。

  3. APKとテストAPKをエクスポートするには、次の入力フィールドを設定する必要があります。UIテスト用のAndroidビルドステップ。ステップ出力は次のようになりますBITRISE_APK_PATH(フィルタリング後に生成されたAPKのパスです)およびBITRISE_TEST_APK_PATH(これは、フィルタリング後に生成されたテストAPKのパスです)。

    • プロジェクトの場所:Androidプロジェクトのルートディレクトリ。

    • モジュール:ビルドするモジュールを設定します。

    • バリアント:ビルドするバリアントを設定します(通常はデバッグ)。

    Device testing for Android

    ステップ出力は次のようになりますBITRISE_APK_PATH(フィルタリング後に生成されたAPKのパスです)およびBITRISE_TEST_APK_PATH(これは、フィルタリング後に生成されたテストAPKのパスです)。

  4. 追加します[ベータ版]仮想デバイスのテストステップ 直後UIテスト用のAndroidビルドステップ。

  5. テストタイプをインストルメンテーションに設定します。私たちのUIテスト用のAndroidビルドステップはAPKとテストAPKをエクスポートし、それらのパスは自動的にに設定されますAPKパスAPKパスをテストするの入力フィールド[ベータ版]仮想デバイスのテストステップ。

  6. [テストデバイス]入力フィールドにテストデバイスのタイプを追加します。デフォルトとは異なるデバイスを選択する場合、入力の形式は次のようになります。 device IDversionlanguageorientationで区切られています,

    Device testing for Android
  7. ビルドを開始し、テスト結果を確認します。

テスト結果の確認

テストレポートには、実行したすべてのテストに関する最も重要な情報が表示されます。 テストの概要 タブ。実行したすべてのテスト、それらの期間、およびそれらの結果が表示されます。個々のテストのタブをクリックして、詳細を確認することもできます。

特定のテストの結果にアクセスするには:

  1. Bitriseでアプリのページを開きます。

  2. クリック ビルド タブをクリックして、テストを実行したビルドを選択します。

  3. ビルドステータスで、をクリックします 続きを見る のそばに テストレポート ラベル。

    Test Reports
  4. テストの概要 タブで、確認したいテストを見つけます。または、トップバーで、チェックアウトするテストセットのタブをクリックします。結果に基づいてテストをフィルタリングするには、右上のメニューを開きます。 全て デフォルトでは。

    Test Reports
  5. クリック テストケース 詳細を確認します。

    UIテストはデバイスごとにグループ化され、単体テストはテストケースごとにグループ化されます。

見つけるだろう:

  • 実行したテストの総数、および成功したテストと失敗したテストの比率。

  • 個々のテスト(単体テストとUIテストの両方)の期間。

  • UIテストの場合、デバイスの向きとロケール。

    Test Reports

テストの種類に応じて、次のことを確認できます。

  • 個々のテストケース

  • パフォーマンスデータ

  • ビデオ

  • スクリーンショット

  • アーティファクトをテストする

  • ログ

上記のように、これはテストの種類によっても異なります。単体テストの場合、もちろんスクリーンショットやビデオは表示されません。