Агент тестирования приложений (Android)

Агент тестирования приложений — это агент для создания, управления и выполнения тестовых случаев, работающий на базе Gemini в Firebase . Вы определяете цели тестирования на естественном языке, а агент использует искусственный интеллект для понимания и навигации по вашему приложению, моделирования взаимодействия с пользователем и предоставления подробных результатов тестирования.

Как агент по тестированию приложений использует ваши данные

Агент App Testing предоставляется компанией Gemini в Firebase и регулируется теми же условиями. Подробнее о том, как Gemini в Firebase использует ваши данные, см. в статье «Как Gemini в Firebase использует ваши данные».

Прежде чем начать

Если вы еще этого не сделали, зарегистрируйте свое приложение в Firebase .

Если вы не используете другие продукты Firebase, вам достаточно создать проект и зарегистрировать приложение. Добавлять SDK в приложение не нужно. Однако, если вы решите использовать другие продукты в будущем, обязательно выполните все шаги, описанные в разделе «Добавление Firebase с помощью консоли Firebase .

Когда вы будете готовы распространить предварительную версию приложения среди тестировщиков, создайте APK или AAB-файл, используя стандартную процедуру, и загрузите его в App Distribution в консоли Firebase . Необходимо подписать APK-файл с помощью отладочного ключа или ключа подписи приложения.

Создать тестовый пример

Для запуска тестов под управлением ИИ агент тестирования приложений использует ваши тестовые случаи на естественном языке для выполнения тестов вашего приложения.

Каждый тестовый случай разбит на шаги, которые будут выполняться последовательно. Шаги позволяют разбить тестовый случай на фазы, каждая из которых имеет свои критерии успеха. Агент может выполнять множество действий на каждом шаге.

Чтобы создать тестовый пример, откройте страницу App Distribution консоли Firebase и выполните следующие действия:

  1. На вкладке «Тестовые случаи» нажмите кнопку «Новый тестовый случай» . Если вы не хотите создавать собственный тестовый случай, вы можете изменить его или использовать предоставленный пример .
  2. В диалоговом окне «Добавить тестовый случай» введите имя тестового случая. Оно используется для идентификации теста, но игнорируется агентом.
  3. Рассмотрите возможность разбить тест на несколько этапов, нажав кнопку Добавить еще один этап .
  4. Дайте каждому шагу цель , описывающую, что агент по тестированию приложений должен сделать на этом шаге.
  5. (Необязательно) Добавьте подсказку , чтобы предоставить дополнительную информацию, которая поможет агенту по тестированию приложений понять и использовать ваше приложение на этом этапе.
  6. (Необязательно) Добавьте критерии успеха , чтобы помочь агенту по тестированию приложений определить, был ли этап успешно завершен.
  7. Нажмите кнопку «Сохранить» после завершения настройки теста.

Пример тестового случая

Ниже приведен пример создания тестового случая с использованием агента App Testing:

Тестирование домашней страницы
Название теста

Загрузка домашней страницы

Цель

Загрузить домашнюю страницу

Намекать

Пройдите все вводные экраны. Закройте все всплывающие окна. Не входите в систему.

Критерии успеха

Главная страница приложения отображается на экране, все изображения загружены, никаких ошибок не отображается.

Провести тест

Агент App Testing позволяет запускать тесты под управлением ИИ в консоли, нажав кнопку «Запустить тесты» на странице «Релизы» или «Тестовые случаи». Откроется экран настройки агента App Testing, где вы можете выбрать один или несколько существующих тестовых случаев, которые агент будет выполнять. Вы также можете выбрать устройства для тестирования и указать, нужно ли предоставлять учётные данные для входа.

Вы также можете запустить тест случайного сканирования , изменив тип теста. Для случайного сканирования используется функция автоматического тестирования .

Результаты тестирования можно просмотреть на странице «Релизы» во вкладке «Тестирование приложений» релиза. Кнопка «Просмотреть подробности » открывает диалоговое окно «Результаты тестирования», где отображаются обнаруженные проблемы, скриншоты приложения и действия, предпринятые Gemini во время тестирования.

Автоматически тестируйте свои сборки

Для автоматического запуска тестов агента App Testing в новых сборках, например из конвейеров CI/CD, вы можете распространить свои сборки среди агента с помощью плагинов Gradle или Fastlane от App Distribution или Firebase CLI.

Отладка результатов вашего теста

Если результаты теста отличаются от ожидаемых, вы можете отладить его, используя переключатель «Показать вид агента» в разделе «Просмотр подробностей » на странице «Результаты теста». В виде агента отображаются элементы экрана, которые агент App Testing смог обнаружить, используя информацию о специальных возможностях приложения. Если вы хотите подробнее изучить то, что увидел агент, вы можете загрузить эту информацию из дополнительного меню действий.

Вы также можете воспользоваться кнопкой «Просмотреть артефакты» на странице «Результаты теста», чтобы просмотреть все видео, журналы и другие облачные артефакты по результатам вашего теста.

Известные проблемы и ограничения

Предварительная версия агента App Testing имеет некоторые известные ограничения:

  • Поскольку агент тестирования приложений использует генеративный ИИ для тестирования вашего приложения, иногда он будет выполнять разные действия, следуя тем же инструкциям.
  • Агент тестирования приложений поддерживает только следующие действия: нажатие, ввод текста, смахивание вверх/вниз/влево/вправо и ожидание.
  • Агент App Testing испытывает трудности с выполнением тестов, состоящих только из одного шага, требующего много действий. Он работает эффективнее, когда сложные задачи разбиваются на несколько более коротких шагов.
  • Агент App Testing иногда не прокручивает страницу, чтобы отобразить другие элементы за пределами экрана. Это чаще происходит, когда нет визуального указания на возможность прокрутки. В качестве обходного решения можно использовать поле «Подсказки» для подсказки прокрутки.
  • Агент тестирования приложений иногда испытывает трудности с подсчетом, например, выполнением действия определенное количество раз.
  • Агент App Testing не сможет управлять вашим приложением, если включён FLAG_SECURE . Вместо скриншотов приложения он увидит только пустой экран.

Квоты на тестирование

В течение ознакомительного периода тесты под управлением ИИ будут предоставляться бесплатно в рамках квоты. Квота по умолчанию составляет 200 тестов в месяц на один проект Firebase.

Обратите внимание: если вы решите запустить несколько тестовых случаев или один и тот же тестовый случай на нескольких устройствах, это будет считаться несколькими тестами. Например, если вы запустите два тестовых случая на двух устройствах, это будет считаться в общей сложности четырьмя тестами.

Чтобы увеличить квоту сверх лимита по умолчанию, обратитесь в службу поддержки Firebase и расскажите о своем варианте использования.