Справочное руководство по разрешениям IAM

Этот документ содержит справочную информацию о настройке разрешений и ролей IAM Test Lab . Если вам нужна более детальная настройка ролей, Test Lab предоставляет разрешения как для выполнения тестов, так и для устройств потоковой передачи с помощью Android Studio. Для выполнения тестов требуются дополнительные требования к правильной настройке разрешений и ролей для IAM и устройств потоковой передачи.

Выполнение теста

Чтобы правильно настроить Test Lab для выполнения и чтения результатов тестов, необходимо настроить доступ к контейнерам Cloud Storage . Это требует особой конфигурации разрешений, которые не все включены в стандартные предопределённые роли Firebase . Чтобы предоставить доступ к Test Lab , используйте один из следующих вариантов.

Тесты через консоль Firebase

Для тестов, запущенных из консоли Firebase или через матрицу устройств Firebase Test Lab в Android Studio :

  1. Протестируйте свое приложение в отдельном проекте Firebase.
  2. Добавьте пользователей, которым необходим доступ к Test Lab , и назначьте им роли устаревших проектов с помощью консоли Firebase .
  3. (Необязательно) Назначьте роль редактора проекта, чтобы разрешить пользователю запускать тесты с помощью Test Lab .
  4. (Необязательно) Назначьте роль Viewer проекта, чтобы разрешить пользователю просматривать результаты тестирования с помощью Test Lab .

Тесты через gcloud CLI

Тесты, запущенные из интерфейса командной строки gcloud , API тестирования или устройств Gradle Managed Devices, используют контейнер Cloud Storage созданный Firebase по умолчанию. Для этого субъекту, выполняющему тест, необходимо иметь роль «roles/editor» для вашего проекта Firebase.

Если вы не можете предоставить эту роль или хотите сохранить подробные результаты тестирования более 90 дней, вы можете отправить эти результаты тестирования в принадлежащий вам контейнер Cloud Storage с помощью параметра командной строки gcloud --results-bucket .

При использовании собственного сегмента Cloud Storage :

  1. Назначьте пару предопределенных ролей, которые вместе предоставляют требуемый набор разрешений, используя консоль Google Cloud .
  2. Чтобы разрешить пользователю запускать тесты с помощью Test Lab , назначьте ему роль администратора Firebase Test Lab ( roles/cloudtestservice.testAdmin ) и роль наблюдателя Firebase Analytics ( roles/firebase.analyticsViewer ).
  3. Чтобы разрешить пользователю просматривать результаты теста в 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 .