Поведенческие тесты пользовательского интерфейса

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

Фреймворки Jetpack

Jetpack включает в себя различные платформы, предоставляющие API для написания UI-тестов:

  • Платформа тестирования Espresso (Android 4.0.1, уровень API 14 или выше) предоставляет API для написания тестов пользовательского интерфейса для имитации взаимодействия пользователя с представлениями в одном целевом приложении. Ключевым преимуществом использования Espresso является то, что он обеспечивает автоматическую синхронизацию тестовых действий с пользовательским интерфейсом тестируемого приложения. Espresso определяет, когда основной поток простаивает, поэтому может запускать тестовые команды в подходящее время, повышая надежность ваших тестов.
  • Jetpack Compose (Android 5.0, уровень API 21 или выше) предоставляет набор тестовых API для запуска и взаимодействия с экранами и компонентами Compose. Взаимодействия с элементами Compose синхронизированы с тестами и позволяют полностью контролировать время, анимацию и рекомпозицию.
  • UI Automator (Android 4.3, уровень API 18 или выше) — это платформа тестирования пользовательского интерфейса, подходящая для функционального тестирования пользовательского интерфейса между приложениями в системе и установленных приложениях. API-интерфейсы UI Automator позволяют выполнять такие операции, как открытие меню «Настройки» или средства запуска приложений на тестовом устройстве.
  • Robolectric (Android 4.1, уровень API 16 или выше) позволяет создавать локальные тесты, которые запускаются на вашей рабочей станции или в среде непрерывной интеграции в обычной JVM, а не на эмуляторе или устройстве. Он может использовать API-интерфейсы тестирования Espresso или Compose для взаимодействия с компонентами пользовательского интерфейса.

Дополнительные ресурсы

Для получения дополнительной информации о создании тестов пользовательского интерфейса обратитесь к следующим ресурсам.

Документация

Кодлабы