Этот документ содержит справочную информацию о настройке разрешений и ролей 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 .
- (Необязательно) Назначьте роль Viewer проекта, чтобы разрешить пользователю просматривать результаты тестирования с помощью Test Lab .
Тесты через gcloud CLI
Тесты, запущенные из интерфейса командной строки gcloud , 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 — это отдельная функция, встроенная в устройства Test Lab . Она обеспечивает прямой доступ к устройствам Test Lab . Редакторы и администраторы Firebase могут использовать Device Streaming без дополнительных ролей, однако при необходимости можно настроить более детальные роли.
Чтобы разрешить пользователю использовать потоковую передачу данных с устройства, назначьте ему предопределенную роль, которая предоставит необходимый набор разрешений, используя консоль Google Cloud . Назначаемая роль — Firebase Test Lab Direct Access Admin ( roles/cloudtestservice.directAccessAdmin
).
Дополнительную информацию о потоковой передаче данных с устройств в Android Studio см. в разделе Потоковая передача данных с устройств в Android Studio .