このドキュメントでは、Test Lab の IAM 権限とロールの構成に関するリファレンス情報を提供します。よりきめ細かなロールを構成する場合は、Test Lab で Android Studio を使用して、テストを実行する権限とストリーミング デバイスを実行する権限の両方を使用します。テスト実行には、IAM とストリーミング デバイスの権限とロールを適切に構成するための追加要件があります。
テスト実行
テストを実行して結果を読み取ることができるように Test Lab を適切に構成するには、Cloud Storage バケットへのアクセスを構成する必要があります。これには特有の権限の構成が必要となります。それが標準の Firebase の事前定義ロールにすべて含まれているわけではありません。Test Lab へのアクセス権を付与するには、次のいずれかの方法を使用します。
Firebase コンソールを使用したテスト
Firebase コンソールまたは Android Studio の Firebase Test Lab デバイス マトリックスから開始したテストの場合:
- 専用の Firebase プロジェクトを別途作成し、そこでアプリをテストする。
- Test Lab にアクセスするユーザーを追加し、Firebase コンソールを使用してそれらのユーザーに以前のプロジェクトのロールを割り当てます。
- (省略可)ユーザーが Test Lab でテストを実行できるように、編集者のプロジェクト ロールを割り当てます。
- (省略可)ユーザーが Test Lab でテスト結果を表示できるように、閲覧者のプロジェクト ロールを割り当てます。
gcloud CLI を使用したテスト
独自の Cloud Storage バケットを使用し、gcloud CLI、Testing API、Gradle で管理されているデバイスのいずれかから開始したテストの場合:
- Google Cloud コンソールを使用して、必要な権限セットをまとめて付与する事前定義ロールのペアを割り当てる。
- ユーザーが Test Lab でテストを実行できるようにするには、Firebase Test Lab 管理者(
roles/cloudtestservice.testAdmin
)と Firebase 向け Google アナリティクス閲覧者(roles/firebase.analyticsViewer
)の両方を割り当てます。 - ユーザーが Test Lab でテスト結果を表示できるようにするには、Firebase Test Lab 閲覧者(
roles/cloudtestservice.testViewer
)と Firebase Analytics 閲覧者(roles/firebase.analyticsViewer
)の両方を割り当てます。
デバイス ストリーミングで権限を有効にする
デバイス ストリーミングは、Test Lab デバイス上に構築された別の機能です。これにより、Test Lab デバイスに直接アクセスできます。Firebase の編集者と管理者は、追加のロールなしでデバイス ストリーミングを使用できますが、必要に応じて、よりきめ細かいロールを指定することもできます。
ユーザーにデバイス ストリーミングの使用を許可するには、Google Cloud コンソールを使用して、必要な権限セットをまとめて付与する事前定義ロールを割り当てます。割り当てるロールは、Firebase Test Lab ダイレクト アクセス管理者(roles/cloudtestservice.directAccessAdmin
)です。
Android Studio でのデバイス ストリーミングについて詳しくは、Android Studio でのデバイス ストリーミングをご覧ください。