【正解】A
【0からの解説】
この問題のキーワードは「複数のデバイスタイプにわたるモバイルアプリの自動テスト」と「最も少ない管理オーバーヘッド」です。
AWS Device Farm は、まさにこの用途のためのフルマネージドサービスです。AWS がクラウド上に実機の Android / iOS デバイスを多数用意しており、それらの実デバイス上でアプリのテストを自動実行できます。デバイスの調達・OS バージョン管理・エミュレータの保守などをユーザーが行う必要はなく、テスト負荷の増加に対してもサービス側がスケールします。さらに CodePipeline のテストステージとして Device Farm を直接統合できるため、CI/CD への組み込みも容易です。よってマネージドで管理オーバーヘッドが最小の A が正解です。
【誤りの選択肢】
B:EC2 にデバイスエミュレータを自前で構築し、Auto Scaling や Lambda での起動制御まで作り込む必要があり、インスタンス・エミュレータ・スケーリングロジックすべてを自分で運用・保守することになります。管理オーバーヘッドが非常に大きく、実機テストもできません。
C:ECS でコンテナ化したテスト基盤を自前で構築・運用する案で、クラスター・タスク定義・スケーリング・Lambda 連携を保守する必要があります。Device Farm に比べ管理負荷が大きく、実デバイスでのテストにも向きません。
D:Lambda 上にカスタムランタイムのエミュレータを構築するのは現実的でなく、実行時間制限などの制約も大きいです。モバイル実機テストの要件に適さず、自前構築の保守負荷も高くなります。
【参考】
AWS Device Farm とはCodePipeline と AWS Device Farm の統合