В этом документе представлена справочная информация о настройке разрешений и ролей IAM Test Lab . Если вы хотите настроить более детализированные роли, Test Lab предоставляет разрешения как для выполнения тестов, так и для потоковых устройств с использованием Android Studio. Выполнение теста имеет дополнительные требования для правильной настройки разрешений и ролей для IAM и потоковых устройств.
Выполнение теста
Чтобы правильно настроить Test Lab , чтобы вы могли выполнять и читать результаты тестов, вам нужно настроить доступ к контейнерам Cloud Storage . Для этого требуется определенная конфигурация разрешений, которые не все включены в стандартные предопределенные роли Firebase . Чтобы предоставить доступ к Test Lab , используйте один из следующих вариантов.
Тесты через консоль Firebase
Для тестов, запущенных из консоли Firebase или через матрицу устройств Firebase Test Lab в Android Studio :
- Протестируйте свое приложение в отдельном проекте Firebase.
- Добавьте пользователей, которым необходим доступ к Test Lab , и назначьте им роли устаревших проектов с помощью консоли Firebase .
- (Необязательно) Назначьте роль редактора проекта, чтобы разрешить пользователю запускать тесты с помощью Test Lab .
- (Необязательно) Назначьте роль проекта «Просмотрщик» , чтобы разрешить пользователю просматривать результаты тестирования с помощью Test Lab .
Тесты через gcloud CLI
Тесты, запущенные из gcloud CLI , API тестирования или Gradle Managed Devices, используют контейнер Cloud Storage созданный Firebase по умолчанию. Для этого требуется, чтобы принципал, выполняющий тест, имел роль "roles/editor" для вашего проекта Firebase.
Если вы не можете предоставить эту роль или хотите сохранить подробные результаты тестирования дольше 90 дней, вы можете отправить эти результаты тестирования в принадлежащий вам контейнер Cloud Storage с помощью параметра командной строки gcloud --results-bucket .
При использовании собственного Cloud Storage :
- Назначьте пару предопределенных ролей, которые вместе предоставляют требуемый набор разрешений, используя консоль Google Cloud .
- Чтобы разрешить пользователю запускать тесты с помощью Test Lab , назначьте ему обоих: администратора Firebase Test Lab (
roles/cloudtestservice.testAdmin
) и наблюдателя Firebase Analytics (roles/firebase.analyticsViewer
). - Чтобы разрешить пользователю просматривать результаты тестирования в Test Lab , назначьте обоих: Firebase Test Lab Viewer (
roles/cloudtestservice.testViewer
) и Firebase Analytics Viewer (roles/firebase.analyticsViewer
).
Включить разрешения в Device Streaming
Device Streaming — это отдельная функция, встроенная в устройства Test Lab . Она обеспечивает прямой доступ к устройствам Test Lab . Редакторы и администраторы Firebase могут использовать Device Streaming без дополнительных ролей, однако при необходимости вы также можете предоставить более детализированные роли.
Чтобы разрешить пользователю использовать потоковую передачу с устройства, назначьте предопределенную роль, которая предоставляет требуемый набор разрешений вместе с помощью консоли Google Cloud . Назначаемая роль — Firebase Test Lab Direct Access Admin ( roles/cloudtestservice.directAccessAdmin
).
Дополнительную информацию о потоковой передаче данных с устройств в Android Studio см. в разделе Потоковая передача данных с устройств в Android Studio .