Учебники

Интерфейс для нескольких приложений

Android поддерживает тестирование пользовательского интерфейса, которое включает более одного приложения. Давайте рассмотрим, что у нашего приложения есть возможность перейти от нашего приложения к приложению обмена сообщениями, чтобы отправить сообщение, а затем вернуться к нашему приложению. В этом сценарии среда тестирования пользовательского интерфейса помогает нам тестировать приложение. UI automator можно рассматривать как хороший компаньон для фреймворка эспрессо. Мы можем воспользоваться опцией intending () в среде тестирования эспрессо, прежде чем выбирать автомат для пользовательского интерфейса .

Инструкция по настройке

Android предоставляет UI Automator как отдельный плагин. Это должно быть настроено в app / build.gradle, как указано ниже,

dependencies {
   ...
   androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0'
}

Рабочий процесс для написания тестового примера

Давайте разберемся, как написать тестовый пример на основе UI Automator ,

Получить объект UiDevice , вызвав метод getInstance () и передав объект Instrumentation .

Получить объект UiObject с помощью метода findObject () . Прежде чем использовать этот метод, мы можем открыть приложение uiautomatorviewer для проверки компонентов пользовательского интерфейса целевого приложения, поскольку понимание целевого приложения позволяет нам писать лучшие тестовые случаи.

Смоделируйте взаимодействие с пользователем, вызвав метод UiObject . Например, setText () для редактирования текстового поля и click () для запуска события нажатия кнопки.

Наконец, мы проверяем, отражает ли пользовательский интерфейс ожидаемое состояние.