В этом документе представлены лучшие практики использования Firebase App Distribution для обеспечения устойчивости и повторяемости рабочих процессов тестирования Android до релиза в среде CI/CD. Решения включают Gradle и fastlane, но для большей гибкости мы также включаем решения, доступные через консоль Firebase , Firebase CLI и общедоступный API Firebase App Distribution . Мы также описываем ограничения по выпуску и тестировщикам, чтобы вы могли заранее спланировать оптимальный опыт.
Если вы также используете платформы Apple, ознакомьтесь с рекомендациями по распространению приложений Apple среди тестировщиков QA с использованием CI/CD и fastlane .
Прежде чем начать
Прежде чем внедрять лучшие практики из этого документа, обязательно включите App Distribution в консоли Firebase для каждого приложения . Если вы не включили App Distribution , вы получите ошибку 404.
Чтобы включить App Distribution , выполните следующие действия:
- Откройте страницу App Distribution в консоли Firebase .
- Выберите приложение для Android.
- Нажмите «Начать» .
Учитывая, что пакеты приложений Android (AAB) становятся наиболее распространенным форматом пакетов Android, мы рекомендуем вам настроить возможность распространения AAB среди ваших тестировщиков, разместив ссылку на Google Play .
Автоматизируйте рабочий процесс предварительного тестирования с помощью конвейера CI/CD
Если вы хотите автоматизировать сборку и выпуск приложений для своих тестировщиков и используете CI/CD, мы рекомендуем вам использовать fastlane или Gradle . Другой вариант — использовать Firebase CLI , который позволяет получить доступ к широкому спектру продуктов Firebase.
Использовать скоростную полосу
Интегрируйте App Distribution в свой конвейер CI/CD с помощью fastlane — инструмента с открытым исходным кодом, который автоматизирует создание и выпуск приложений для iOS и Android. Создавая и распространяя свои последние релизы среди тестировщиков автоматически, вы гарантируете, что у тестировщиков всегда будет самая актуальная тестовая версия вашего приложения.
Чтобы узнать, как интегрировать App Distribution с Fastlane, ознакомьтесь со статьей Распространение приложений Android среди тестировщиков с помощью Fastlane .
Использовать Gradle
Используйте Gradle для интеграции App Distribution в процесс сборки Android с помощью плагина App Distribution Gradle. Плагин позволяет вам указать тестировщиков и заметки о выпуске в файле build.gradle
вашего приложения, что позволяет вам настраивать дистрибутивы для различных типов сборки и вариантов вашего приложения.
Чтобы узнать, как интегрировать App Distribution с Gradle, ознакомьтесь со статьей Распространение приложений Android среди тестировщиков с помощью Gradle .
Используйте Firebase CLI
Используйте инструменты Firebase CLI, которые App Distribution предоставляет для распространения сборок среди тестировщиков программным способом. Вы можете указать тестировщиков и заметки о выпуске для сборки.
Распространите последнюю сборку Android, указав идентификатор приложения Firebase, при желании добавив примечание к выпуску и файл, содержащий адреса электронной почты тестировщиков:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Дополнительную информацию об использовании Firebase CLI для автоматизации сборок см. в статье Распространение приложений Android среди тестировщиков с помощью Firebase CLI .
Используйте учетные данные службы для аутентификации
Используйте плагин App Distribution fastlane , плагин Gradle или Firebase CLI с учетными записями служб. Учетная запись службы — это тип учетной записи Google, которая представляет приложения (в отличие от пользователей). Ваша система CI может использовать учетные записи служб для запуска рабочих нагрузок App Distribution . Чтобы узнать больше, см. раздел Аутентификация с учетной записью службы .
Если вы используете федерацию удостоверений рабочей нагрузки, вы можете создать и использовать файл конфигурации учетных данных вместо ключа учетной записи службы.
Помните об ограничениях по выпуску
App Distribution поддерживает максимум 1000 релизов на приложение. Это означает, что при превышении лимита релизов App Distribution автоматически удаляет самые старые релизы, превышающие лимит. Чтобы узнать, как управлять лимитами релизов, см. Как долго доступны релизы приложений?
Добавьте один и тот же набор тестировщиков в несколько релизов
Если вы хотите добавить большое количество тестировщиков к своим релизам, используйте функцию управления массовым тестированием App Distribution .
Мы рекомендуем использовать группы для добавления одних и тех же тестировщиков в несколько релизов. Группа действует как список контроля доступа; когда вы удаляете тестировщика из группы, он теряет доступ ко всем релизам, распространяемым в этой группе. Чтобы узнать больше, см. Добавление и удаление тестировщиков из группы .
Если вам нужно управлять большим количеством тестировщиков, вы можете массово добавлять и удалять тестировщиков с помощью консоли Firebase . Для автоматизации добавления и удаления тестировщиков используйте Firebase CLI , fastlane , Gradle или общедоступный Firebase App Distribution API .
Помните об ограничениях тестировщиков
App Distribution ограничивает количество тестировщиков, которых вы можете добавить в проект Firebase или группу App Distribution . Если вы превысите эти ограничения, вы не сможете распространять свое приложение среди дополнительных тестировщиков. Чтобы узнать больше об ограничениях тестировщиков, см. Существуют ли ограничения на добавление тестировщиков в мое приложение?
Предоставить потенциальным тестировщикам возможность самостоятельно регистрироваться для тестирования
Чтобы упростить распространение вашего приложения среди большего количества тестировщиков, мы рекомендуем вам использовать пригласительные ссылки. Пригласительная ссылка — это уникальный URL-адрес, который позволяет тестировщикам вводить свои адреса электронной почты для регистрации на тестирование приложения. Предоставление пользователям возможности добавлять себя в ваш список тестировщиков приложений — это простой способ увеличить внутреннюю базу тестирования.
Примеры использования ссылок приглашения включают в себя корпоративные программы тестирования, организации с большими командами по контролю качества и группы разработчиков, которые хотят, чтобы отдельные клиенты могли контролировать доступ тестировщиков.
Мы рекомендуем вам создать ссылку приглашения для группы. Любой тестировщик, который регистрируется с помощью ссылки приглашения, автоматически добавляется в последующие релизы.
Дополнительную информацию см. в разделах Создание ссылок-приглашений и Добавление и удаление тестировщиков из группы .
Убедитесь, что тестировщики тестируют именно ту версию, которая вам нужна
Когда загружается новая версия, ваши тестировщики получают уведомление по электронной почте. В дополнение к этому уведомлению вы можете использовать следующие функции — ссылки на релизы и оповещения в приложении — чтобы убедиться, что ваши тестировщики тестируют именно ту версию приложения, которая вам интересна:
- Ссылки на релизы: используйте эту функцию, когда хотите поделиться определенной версией с тестировщиками. Чтобы узнать, как использовать ссылки на релизы, см. Распределение приложений Android среди тестировщиков с помощью консоли Firebase . Эти ссылки также доступны с нашими инструментами командной строки (CLI) Firebase , fastlane и Gradle для использования с вашими инструментами автоматизации сборки.
- Оповещения в приложении: используйте эти оповещения, когда хотите убедиться, что ваши тестировщики тестируют последнюю версию вашего приложения. Интегрировав Firebase App Distribution Android SDK, вы можете отображать оповещения прямо внутри приложения для ваших тестировщиков, когда доступны новые сборки вашего приложения. Чтобы узнать, как добавлять оповещения в приложении, см. Уведомление тестировщиков о новых сборках .
Автоматически закрывать доступ для тестировщиков, которые покидают компанию
Когда ваш внутренний поток тестирования CI/CD запущен и работает, вам нужно убедиться, что люди, которые покидают компанию, больше не имеют доступа к вашим внутренним сборкам. Чтобы помочь вам управлять доступом тестировщиков к сборкам, App Distribution предоставляет следующие возможности:
- fastlane: Используйте файл Fastfile или напрямую запускайте действия fastlane. Чтобы узнать больше, см. Распространяйте приложения Android среди тестировщиков с помощью fastlane .
- Firebase CLI: Используйте действие
firebase appdistribution:testers:remove
. Чтобы узнать больше, см . Distribute Android apps to testers using the Firebase CLI . - Gradle: Если вы используете Gradle для удаления тестировщиков, передайте
appDistributionRemoveTesters
с аргументами
и-- PROJECT_NUMBER
в файле-- EMAILSbuild.gradle
. Чтобы узнать больше, см. Распределение приложений Android среди тестировщиков с помощью Gradle . - Public Firebase App Distribution API : используйте конечную точку
testers.batchRemove
.
В этом документе представлены лучшие практики использования Firebase App Distribution для обеспечения устойчивости и повторяемости рабочих процессов тестирования Android до релиза в среде CI/CD. Решения включают Gradle и fastlane, но для большей гибкости мы также включаем решения, доступные через консоль Firebase , Firebase CLI и общедоступный API Firebase App Distribution . Мы также описываем ограничения по выпуску и тестировщикам, чтобы вы могли заранее спланировать оптимальный опыт.
Если вы также используете платформы Apple, ознакомьтесь с рекомендациями по распространению приложений Apple среди тестировщиков QA с использованием CI/CD и fastlane .
Прежде чем начать
Прежде чем внедрять лучшие практики из этого документа, обязательно включите App Distribution в консоли Firebase для каждого приложения . Если вы не включили App Distribution , вы получите ошибку 404.
Чтобы включить App Distribution , выполните следующие действия:
- Откройте страницу App Distribution в консоли Firebase .
- Выберите приложение для Android.
- Нажмите «Начать» .
Учитывая, что пакеты приложений Android (AAB) становятся наиболее распространенным форматом пакетов Android, мы рекомендуем вам настроить возможность распространения AAB среди ваших тестировщиков, разместив ссылку на Google Play .
Автоматизируйте рабочий процесс предварительного тестирования с помощью конвейера CI/CD
Если вы хотите автоматизировать сборку и выпуск приложений для своих тестировщиков и используете CI/CD, мы рекомендуем вам использовать fastlane или Gradle . Другой вариант — использовать Firebase CLI , который позволяет получить доступ к широкому спектру продуктов Firebase.
Использовать скоростную полосу
Интегрируйте App Distribution в свой конвейер CI/CD с помощью fastlane — инструмента с открытым исходным кодом, который автоматизирует создание и выпуск приложений для iOS и Android. Создавая и распространяя свои последние релизы среди тестировщиков автоматически, вы гарантируете, что у тестировщиков всегда будет самая актуальная тестовая версия вашего приложения.
Чтобы узнать, как интегрировать App Distribution с Fastlane, ознакомьтесь со статьей Распространение приложений Android среди тестировщиков с помощью Fastlane .
Использовать Gradle
Используйте Gradle для интеграции App Distribution в процесс сборки Android с помощью плагина App Distribution Gradle. Плагин позволяет вам указать тестировщиков и заметки о выпуске в файле build.gradle
вашего приложения, что позволяет вам настраивать дистрибутивы для различных типов сборки и вариантов вашего приложения.
Чтобы узнать, как интегрировать App Distribution с Gradle, ознакомьтесь со статьей Распространение приложений Android среди тестировщиков с помощью Gradle .
Используйте Firebase CLI
Используйте инструменты Firebase CLI, которые App Distribution предоставляет для распространения сборок среди тестировщиков программным способом. Вы можете указать тестировщиков и заметки о выпуске для сборки.
Распространите последнюю сборку Android, указав идентификатор приложения Firebase, при желании добавив примечание к выпуску и файл, содержащий адреса электронной почты тестировщиков:
firebase appdistribution:distribute test.aab \
--app 1:1234567890:android:0a1b2c3d4e5f67890 \
--release-notes "Bug fixes and improvements" --testers-file testers.txt
Дополнительную информацию об использовании Firebase CLI для автоматизации сборок см. в статье Распространение приложений Android среди тестировщиков с помощью Firebase CLI .
Используйте учетные данные службы для аутентификации
Используйте плагин App Distribution fastlane , плагин Gradle или Firebase CLI с учетными записями служб. Учетная запись службы — это тип учетной записи Google, которая представляет приложения (в отличие от пользователей). Ваша система CI может использовать учетные записи служб для запуска рабочих нагрузок App Distribution . Чтобы узнать больше, см. раздел Аутентификация с учетной записью службы .
Если вы используете федерацию удостоверений рабочей нагрузки, вы можете создать и использовать файл конфигурации учетных данных вместо ключа учетной записи службы.
Помните об ограничениях по выпуску
App Distribution поддерживает максимум 1000 релизов на приложение. Это означает, что при превышении лимита релизов App Distribution автоматически удаляет самые старые релизы, превышающие лимит. Чтобы узнать, как управлять лимитами релизов, см. Как долго доступны релизы приложений?
Добавьте один и тот же набор тестировщиков в несколько релизов
Если вы хотите добавить большое количество тестировщиков к своим релизам, используйте функцию управления массовым тестированием App Distribution .
Мы рекомендуем использовать группы для добавления одних и тех же тестировщиков в несколько релизов. Группа действует как список контроля доступа; когда вы удаляете тестировщика из группы, он теряет доступ ко всем релизам, распространяемым в этой группе. Чтобы узнать больше, см. Добавление и удаление тестировщиков из группы .
Если вам нужно управлять большим количеством тестировщиков, вы можете массово добавлять и удалять тестировщиков с помощью консоли Firebase . Для автоматизации добавления и удаления тестировщиков используйте Firebase CLI , fastlane , Gradle или общедоступный Firebase App Distribution API .
Помните об ограничениях тестировщиков
App Distribution ограничивает количество тестировщиков, которых вы можете добавить в проект Firebase или группу App Distribution . Если вы превысите эти ограничения, вы не сможете распространять свое приложение среди дополнительных тестировщиков. Чтобы узнать больше об ограничениях тестировщиков, см. Существуют ли ограничения на добавление тестировщиков в мое приложение?
Предоставить потенциальным тестировщикам возможность самостоятельно регистрироваться для тестирования
Чтобы упростить распространение вашего приложения среди большего количества тестировщиков, мы рекомендуем вам использовать пригласительные ссылки. Пригласительная ссылка — это уникальный URL-адрес, который позволяет тестировщикам вводить свои адреса электронной почты для регистрации на тестирование приложения. Предоставление пользователям возможности добавлять себя в ваш список тестировщиков приложений — это простой способ увеличить внутреннюю базу тестирования.
Примеры использования ссылок приглашения включают в себя корпоративные программы тестирования, организации с большими командами по контролю качества и группы разработчиков, которые хотят, чтобы отдельные клиенты могли контролировать доступ тестировщиков.
Мы рекомендуем вам создать ссылку приглашения для группы. Любой тестировщик, который регистрируется с помощью ссылки приглашения, автоматически добавляется в последующие релизы.
Дополнительную информацию см. в разделах Создание ссылок-приглашений и Добавление и удаление тестировщиков из группы .
Убедитесь, что тестировщики тестируют именно ту версию, которая вам нужна
Когда загружается новая версия, ваши тестировщики получают уведомление по электронной почте. В дополнение к этому уведомлению вы можете использовать следующие функции — ссылки на релизы и оповещения в приложении — чтобы убедиться, что ваши тестировщики тестируют именно ту версию приложения, которая вам интересна:
- Ссылки на релизы: используйте эту функцию, когда хотите поделиться определенной версией с тестировщиками. Чтобы узнать, как использовать ссылки на релизы, см. Распределение приложений Android среди тестировщиков с помощью консоли Firebase . Эти ссылки также доступны с нашими инструментами командной строки (CLI) Firebase , fastlane и Gradle для использования с вашими инструментами автоматизации сборки.
- Оповещения в приложении: используйте эти оповещения, когда хотите убедиться, что ваши тестировщики тестируют последнюю версию вашего приложения. Интегрировав Firebase App Distribution Android SDK, вы можете отображать оповещения прямо внутри приложения для ваших тестировщиков, когда доступны новые сборки вашего приложения. Чтобы узнать, как добавлять оповещения в приложении, см. Уведомление тестировщиков о новых сборках .
Автоматически закрывать доступ для тестировщиков, которые покидают компанию
Когда ваш внутренний поток тестирования CI/CD запущен и работает, вам нужно убедиться, что люди, которые покидают компанию, больше не имеют доступа к вашим внутренним сборкам. Чтобы помочь вам управлять доступом тестировщиков к сборкам, App Distribution предоставляет следующие возможности:
- fastlane: Используйте файл Fastfile или напрямую запускайте действия fastlane. Чтобы узнать больше, см. Распространяйте приложения Android среди тестировщиков с помощью fastlane .
- Firebase CLI: Используйте действие
firebase appdistribution:testers:remove
. Чтобы узнать больше, см . Distribute Android apps to testers using the Firebase CLI . - Gradle: Если вы используете Gradle для удаления тестировщиков, передайте
appDistributionRemoveTesters
с аргументами
и-- PROJECT_NUMBER
в файле-- EMAILSbuild.gradle
. Чтобы узнать больше, см. Распределение приложений Android среди тестировщиков с помощью Gradle . - Public Firebase App Distribution API : используйте конечную точку
testers.batchRemove
.