Introduction to AWS Device Farm (Japanese)
SPL-27 - Version 1.5.9
© 2022 Amazon Web Services, Inc. and its affiliates. All rights reserved. このトレーニング内容の全体または一部を複製または再配布することは、Amazon Web Services, Inc. の書面による事前の許可がある場合を除き、禁じられています。商業目的のコピー、貸与、または販売を禁止します。 修正、ご意見、その他の質問については、AWS トレーニングと認定 までお問い合わせください。
概要
このラボでは、AWS Device Farm を使用して、サンプルの Android モバイルアプリケーションをテストする方法を示します。このラボでは、AWS Device Farm コンソールを使用して、プロジェクトの作成、サンプルの .apk ファイルのアップロード、標準テストスイートの実行、結果の表示を行います。
取り上げるトピック
このラボを修了すると、次のことができるようになります。
- AWS Device Farm プロジェクトを作成する
- AWS Device Farm プロジェクトにサンプルの Android モバイルアプリケーションをアップロードする
- AWS Device Farm で基本的なテストスイートを使用してモバイルアプリケーションをテストする
- テストスイートの実行結果を確認する
前提条件
モバイルアプリケーション開発とデプロイプラットフォーム、アプリケーションテストの概念に関する知識が役に立つ場合がありますが、必須ではありません。
AWS Device Farm の紹介
AWS Device Farm は、iOS、Android、Fire OS のアプリケーションのテストを AWS にホストされた実際の携帯電話やタブレット上で実行できるテストサービスです。このサービスにより、独自のテストのアップロードや、スクリプトが不要な組み込みの互換性テストの使用が可能になります。テストが完了すると、結果の概要、詳細なログ、高品質のスクリーンショット、パフォーマンスデータが記載されたテストレポートが更新されます。
Device Farm では、Android、iOS、Fire OS のネイティブアプリケーションおよびハイブリッドアプリケーション(PhoneGap、Titanium、Xamarin、Unity、その他のフレームワークで作成されたアプリケーションを含む)がサポートされています。
AWS Device Farm の用語
Device Farm では、情報を整理する方法を定義する次の用語が使用されています。
プロジェクト: 複数の実行、1 つまたは複数のデバイスに対する単一のアプリケーションの各テストのための 1 つの実行を含む論理ワークスペース。プロジェクトを使用すると、どのような方法を選択した場合でもワークスペースを整理できます。例えば、アプリケーションタイトルごと、またはプラットフォームごとに 1 つのプロジェクトが存在する場合があります。プロジェクトは、必要なだけ作成できます。
実行: 特定のデバイスセットで実行する、特定のテストセットを含むアプリケーションの特定のビルド。実行により、実行の結果に関する情報を含むレポートが生成されます。実行には、1 つまたは複数のジョブが含まれます。詳細については、WS Device Farm に関する AWS ドキュメント AWS Device Farm での実行 を参照してください。
レポート: 実行、つまり 1 つまたは複数のデバイスに対して単一のアプリケーションをテストするための Device Farm へのリクエストに関する情報が含まれます。詳細については、AWS Device Farm に関する AWS ドキュメント AWS Device Farm のレポート を参照してください。
ジョブ: 単一のデバイスに対して単一のアプリケーションをテストするための Device Farm へのリクエスト。ジョブには、1 つまたは複数のスイートが含まれます。
スイート: テストパッケージにおけるテストの階層化された構造。スイートには、1 つまたは複数のテストが含まれます。
テスト: テストパッケージ内の個々のテスト。
AWS Device Farm のテストタイプ
Device Farm では現在、次のテストタイプがサポートされています。
アンドロイド向け:
- Appium Java JUnit
- Appium Java TestNG
- Calabash
- Instrumentation(JUnit、Espresso、Robotium、その他 Instrumentation ベースのテスト)
- UI Automator
- Explorer
iOS 向け:
- Appium Java JUnit
- Appium Java TestNG
- Calabash
- UI Automation
- XCTest (KIF を含む)
独自のテストをお持ちでない場合は、組み込みの Fuzz テストを使用できます。組み込みのファズテストは、ユーザーインターフェイスイベントをデバイスにランダムに送信し、結果をレポートします。
このハンズオンラボでは、この機能について説明します。ファズテストに実装されたテストに関する詳細については、組み込みのファズテスト (Android および iOS) を参照してください。