Кроссплатформенная техника – Краткое руководство по настройке состояния приложений ➡️ Более быстрые и надежные тесты Appium
Рассмотрим один простой и понятный подход, связанный с автоматизацией тестирования мобильного пользовательского интерфейса с помощью Appium.
Он называется Test Nexus. Что такое Test Nexus? По сути, это список различных тестовых компонентов, визуализированных специальным образом, чтобы дать исходное представление об устройстве приложения: из каких кнопок оно состоит, куда ведет каждая из них, за какую функциональность отвечает и т.д.
Подпишитесь на наш ТЕЛЕГРАМ КАНАЛ ПО АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ
Основная идея заключается в том, что все наше приложение представлено в виде одного с экрана, на котором имеется множество кнопок. Каждая кнопка переносит нас в определенное место в приложении. Таким образом, вместо того, чтобы листать по всему приложению, как обычный пользователь, мы можем просто нажать одну кнопку и волшебным образом перенестись в удаленное место нашего приложения, до которого обычному пользователю пришлось бы добираться очень долго. Test Nexus доступен только в тестовом билде, он не должен поставляться клиентам.
У нас может быть ссылка с текстом Logged-In Home
, или ссылка с текстом Cart With 10 Items
. При нажатии на любую из этих ссылок приложение перейдет к соответствующему разделу с соответствующим состоянием. Это означает, что разработчику приложения придется подключать ссылки к любой необходимой логике.
Преимущество такого подхода заключается в том, что он кроссплатформенный, и автору теста Appium достаточно просто найти нужную кнопку и нажать на нее, сэкономив при этом массу времени.
Настоящая ценность Test Nexus становится очевидной, когда мы понимаем, что у нас могут быть кнопки, которые не только ведут нас в новое место, но и автоматически запускают различные настройки, которые обычно требуют большого количества взаимодействий с пользовательским интерфейсом.
Test Nexus требует только стандартного поиска элементов Selenium или Appium и взаимодействия с ними с точки зрения тестового кода. Порталы Test Nexus – это просто кнопки, с которыми можно легко взаимодействовать, используя стандартный API.
Плюсы ➕ и минусы ➖
Плюсы:
- С точки зрения автора теста мы имеем дело с нажатием кнопок с помощью стандартного API Appium, что делает использование Test Nexus очень простым для автоматизации.
- Test Nexus также очень легко расширять. Мы просто делаем вид Nexus длиннее, добавляя новые кнопки.
- Подход Test Nexus — это быстрый и эффективный способ сократить время на настройку состояния приложения. Достаточно просто нажать на нужную кнопку, и все готово.
Минусы:
- Недостатком такого подхода является то, что нам потребуется версия приложения, предназначенная только для тестирования. Мы не хотим поставлять Test Nexus пользователям.
- Другой основной недостаток заключается в том, что функциональность Test Nexus должна быть создана разработчиками. Не имея исходного кода и возможности его модификации, авторы тестов не могут реализовать его самостоятельно.
∴ В заключение давайте рассмотрим примеры из реальной жизни от Джона Липпса и Вима Селлеса. Эти приложения демонстрируют, как мы можем применять технику Test Nexus и использовать её в работе в качестве мобильных тестировщиков.
Тестовые приложения, упомянутые выше, реализуют две различные версии визуализации приложения в Test Nexus. Все ссылки ведут в разные части приложения. Такие визуализации гораздо проще воспринимаются человеком.
Перевод статьи «Test Nexus — Kitchen Sink for Fast and Reliable Mobile App Testing».