Android アプリの計測済みテストの実行
インストルメント化されたテストは、物理デバイスかエミュレートされたデバイスかに関係なく、Android デバイス上で実行されます。 Bitrise では、adb ツールを使用してインストルメント化されたテストを実行できます。
計測されたテスト 物理デバイスでもエミュレートされたデバイスでも、Android デバイス上で実行できます。 Bitrise では、次を使用してインストルメント化されたテストを実行できます。 adbツール。インストルメント化されたテストを実行するには、2 つのものが必要です ステップ あなたの中で ワークフロー:
-
の UI テスト用の Android ビルド ステップでは、APK とテスト APK の両方をビルドします。例えば、
MyappDebug.apkとMyAppDebugAndroidTest.apk.ステップは、これらの APK へのパスを 2 つの出力環境変数に保存します。BITRISE_APK_PATHとBITRISE_TEST_APK_PATH.これらの環境変数を使用して、同じワークフローの後続のステップで APK にアクセスできます。 -
の Android 計装テスト ステップは、前のステップでビルドされた APK を使用してインストルメント化されたテストを実行します。
Android のインストルメント化されたテストを実行するには:
ワークフローエディター
ビットライズ.yml
-
追加 UI テスト用の Android ビルド ワークフローに進みます。
-
を確認してください プロジェクトの場所 input は、Android アプリのルート ディレクトリを指します。
-
ビルドするモジュールとバリアントを モジュール そしてその 変異体 入力。
プロジェクトの利用可能なモジュールとバリアントを確認できます Android Studio のプロジェクト ウィンドウ.

-
の中に オプション 入力グループでは、生成された APK ファイルの場所を APK の場所のパターン 入力。
入力は、ファイル パターンを値として受け取ります。デフォルト値は
*/build/outputs/apk/*.apk. -
オプションで、次のことができます 追加の Gradle 引数を渡す のビルドタスクに 追加の Gradle 引数 入力。
-
追加 Android 計装テスト ワークフローに進みます。 UI テスト用の Android ビルド ステップ。
-
であることを確認してください。 メイン APK パス そしてその APK パスのテスト 入力は正しい場所を指します。
デフォルトでは、2 つの入力の値は
BITRISE_APK_PATHそしてそのBITRISE_TEST_APK_PATH環境変数、それぞれ。これらの変数は、 UI テスト用の Android ビルド ステップ。そのため、ほとんどの場合、これらの入力の値を変更する必要はありません。
-
の中に テストランナークラス 入力で、使用するテスト ランナーを指定します。
デフォルトのランナーは AndroidJUnitRunner クラス.
-
必要に応じて、追加のオプションをテスト ランナーに渡すことができます。 追加のテスト オプション 入力。
この入力を使用して、のアクティビティ マネージャー ツールにコマンドを発行します。
adbシェル。発行できるコマンドの詳細については、を参照してください。 adb の公式ドキュメント. -
テストを実行し、その結果を ビルドログ.
-
を追加します。
android-build-for-ui-testingワークフローに進みます。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - deploy-to-bitrise-io: {} -
を確認してください。
project_locationinput は Android アプリのルート ディレクトリを指します。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - project_location: $BITRISE_SOURCE_DIR - deploy-to-bitrise-io: {} -
ビルドするモジュールとバリアントを設定します。
moduleそしてそのvariant入力。プロジェクトで利用可能なモジュールとバリアントを確認できます。 Android Studio のプロジェクト ウィンドウ。
steps: - git-clone: {} - android-build-for-ui-testing: inputs: - module: app - variant: debug - project_location: $BITRISE_SOURCE_DIR - deploy-to-bitrise-io: {} -
の中に
apk_path_pattern入力すると、生成された APK ファイルの場所を設定できます。入力はファイル パターンを値として受け取ります。デフォルト値は次のとおりです
*/build/outputs/apk/*.apk。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - arguments: flag - module: app - variant: debug - apk_path_pattern: '*/build/outputs/apk/*.apk' - project_location: $BITRISE_SOURCE_DIR - deploy-to-bitrise-io: {} -
オプションで、次のことができます 追加の Gradle 引数を渡す のビルドタスクに
arguments入力。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - arguments: --task - module: app - variant: debug - apk_path_pattern: '*/build/outputs/apk/*.apk' - project_location: $BITRISE_SOURCE_DIR - deploy-to-bitrise-io: {} -
を追加します。
android-instrumented-test後のある時点で、ワークフローに進みます。android-build-for-ui-testingステップ。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - arguments: flag - module: app - variant: debug - apk_path_pattern: '*/build/outputs/apk/*.apk' - cache_level: all - project_location: $BITRISE_SOURCE_DIR - android-instrumented-test: inputs: - deploy-to-bitrise-io: {} -
ことを確認してください。
main_apk_pathそしてそのtest_apk_path入力は正しい場所を指します。デフォルトでは、2 つの入力の値は
BITRISE_APK_PATHそしてそのBITRISE_TEST_APK_PATHそれぞれ環境変数。これらの変数は、android-build-for-ui-testingステップ。したがって、ほとんどの場合、これらの入力の値を設定する必要はありません。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - arguments: flag - module: app - variant: debug - apk_path_pattern: '*/build/outputs/apk/*.apk' - cache_level: all - project_location: $BITRISE_SOURCE_DIR - android-instrumented-test: inputs: - main_apk_path: $BITRISE_APK_PATH - test_apk_path: $BITRISE_TEST_APK_PATH - deploy-to-bitrise-io: {} -
の中に
test_runner_class入力では、使用するテスト ランナーを指定します。デフォルトのランナーは AndroidJUnitRunner クラス。
steps: - git-clone: {} - android-build-for-ui-testing: inputs: - arguments: flag - module: app - variant: debug - apk_path_pattern: '*/build/outputs/apk/*.apk' - cache_level: all - project_location: $BITRISE_SOURCE_DIR - android-instrumented-test: inputs: - test_runner_class: androidx.test.runner.AndroidJUnitRunner - main_apk_path: $BITRISE_APK_PATH - test_apk_path: $BITRISE_TEST_APK_PATH - deploy-to-bitrise-io: {} -
オプションで、次のコマンドを使用して追加のオプションをテスト ランナーに渡すことができます。
additional_testing_options入力。この入力により、アクティビティ マネージャー ツールにコマンドを発行します。
adbシェル。発行できるコマンドの詳細については、「 adb の公式ドキュメント。たとえば、値はKEY1 true KEY2 falseとして adb に渡されますadb shell am instrument -e "KEY1" "true" "KEY2" "false" [...]。steps: - git-clone: {} - android-build-for-ui-testing: inputs: - arguments: flag - module: app - variant: debug - apk_path_pattern: '*/build/outputs/apk/*.apk' - cache_level: all - project_location: $BITRISE_SOURCE_DIR - android-instrumented-test: inputs: - test_runner_class: androidx.test.runner.AndroidJUnitRunner - additional_testing_options: KEY1 true KEY2 false - main_apk_path: $BITRISE_APK_PATH - test_apk_path: $BITRISE_TEST_APK_PATH - deploy-to-bitrise-io: {} -
テストを実行し、その結果を ビルドログ.