В этом документе содержится справочная информация о настройке разрешений и ролей 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, Testing API или устройств под управлением Gradle, по умолчанию используют сегмент 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 Аналитики (roles/firebase.analyticsViewer). - Чтобы пользователь мог просматривать результаты тестирования в Test Lab, назначьте ему роли "Читатель Firebase Test Lab" (
roles/cloudtestservice.testViewer) и "Читатель Firebase Аналитики" (roles/firebase.analyticsViewer).
Как включить разрешения в Device Streaming
Стриминг устройств – это отдельная функция, созданная на основе устройств Test Lab. Оно позволяет напрямую подключаться к устройствам Test Lab. Редакторы и администраторы Firebase могут использовать Device Streaming без дополнительных ролей, но при необходимости вы можете предоставить более детализированные роли.
Чтобы разрешить пользователю использовать стриминг устройств, назначьте ему предопределенную роль, которая предоставляет необходимый набор разрешений, в консоли Google Cloud. Назначьте роль "Администратор прямого доступа к Firebase Test Lab" (roles/cloudtestservice.directAccessAdmin).
Подробнее о трансляции устройств в Android Studio…