Firebase Test Lab предоставляет облачную инфраструктуру для тестирования приложений Android и полностью интегрирован с Android Studio для запуска инструментальных тестов и просмотра результатов.
В этом руководстве рассказывается, как изменить инструментальные тесты в Android Studio, чтобы интегрировать и запустить их с помощью Test Lab. Инструкции по использованию Test Lab из интерфейса Android Studio для создания матрицы тестирования, запуска инструментального теста и просмотра результатов тестирования приведены в статье Как запускать тесты с помощью Firebase Test Lab.
Как делать скриншоты
Test Lab поддерживает создание скриншотов при выполнении инструментальных тестов. Чтобы узнать, как делать скриншоты, ознакомьтесь с разделом Добавление библиотеки скриншотов в проект.
Как создавать тесты с помощью Espresso Test Recorder
Инструмент Espresso Test Recorder позволяет создавать тесты интерфейса для приложения без написания кода. Вы можете записать свои действия на устройстве и добавить утверждения, чтобы проверить элементы интерфейса в определенных моментах работы приложения. Затем Espresso Test Recorder возьмет сохраненную запись и автоматически создаст соответствующий тест интерфейса Espresso, который можно запустить для тестирования приложения в Test Lab.
Подробнее о том, как создавать тесты интерфейса с помощью Espresso Test Recorder…
Как изменить ход автоматизированного тестирования для Test Lab
Test Lab предоставляет системную переменную, которую можно добавить в автоматизированные тесты, чтобы они выполнялись по-разному в Test Lab и на собственном тестовом устройстве или эмуляторе.
В следующем примере кода считывается системное свойство firebase.test.lab и задается строка testLabSetting со значением true, если тест выполняется в Test Lab.
Затем значение этой строки используется для определения того, будут ли выполняться дополнительные операторы:
Kotlin
val testLabSetting = Settings.System.getString(contentResolver, "firebase.test.lab") if ("true" == testLabSetting) { // Do something when running in Test Lab // ... }
Java
String testLabSetting = Settings.System.getString(getContentResolver(), "firebase.test.lab"); if ("true".equals(testLabSetting)) { // Do something when running in Test Lab // ... }
Как использовать управляемые устройства Gradle с помощью плагина Firebase Test Lab
Управляемые устройства Gradle, доступные через Firebase Test Labплагин, позволяют запускать автоматизированные инструментальные тесты в масштабе на Test Labустройствах на основе конфигураций в файлах Gradle проекта.
Управляемые устройства Gradle также поддерживают интеллектуальное сегментирование, которое позволяет оптимально распределять тесты по сегментам на основе истории тестирования. При использовании умного сегментирования сегменты выполняются примерно одинаковое время и возвращают результаты тестирования как можно быстрее. Благодаря интеллектуальному сегментированию можно запускать большие наборы тестов параллельно, что делает эту функцию подходящей для процессов непрерывной интеграции и непрерывной доставки.
Чтобы включить умное разделение с помощью плагина Gradle Managed Devices Test Lab, следуйте инструкциям в статье Как оптимизировать выполнение тестов с помощью умного разделения.