Запустите скрипт Robo (iOS+)

В этом документе описывается, как использовать скрипты Robo , которые являются тестами, автоматизирующими ручные задачи QA для мобильных приложений и обеспечивающими непрерывную интеграцию (CI) и стратегии тестирования перед запуском. Например, вы можете использовать скрипты Robo для тестирования общего пользовательского пути или предоставления определенного ввода пользовательского интерфейса (UI), например имени пользователя и пароля. Скрипты Robo являются функцией теста Robo .

Скрипты Robo используют Robo test в качестве тестового движка. В своей самой простой форме скрипт Robo состоит из последовательности действий пользовательского интерфейса, таких как ввод текста «имя пользователя» и последующее нажатие кнопки OK . Скрипты Robo также могут включать такие действия, как ожидание появления элемента, нажатие в определенной точке внутри элемента и выполнение команд оболочки Android Debug Bridge ( adb ).

Скрипты Robo имеют следующие преимущества по сравнению с традиционными фреймворками тестирования:

Возможности Описание
Очень прочный Скрипты Robo допускают значительные структурные и поведенческие различия между версиями приложений, а также нестабильность приложений.
Открытый После завершения скрипта Robo базовый тест Robo может взять на себя управление и продолжить тестирование приложения. Такой подход к непрерывному тестированию позволяет реализовать несколько ключевых вариантов использования. Например, вы можете использовать скрипт Robo, чтобы перевести приложение в определенное состояние, выполнив пользовательский поток входа.
Записываемый Вам не нужно вручную кодировать скрипты Robo. Их можно записать с помощью средства записи скриптов Robo в Android Studio. Создание или изменение скриптов Robo обычно не требует никаких знаний в области мобильной разработки.
Гибкий Скрипты Robo могут взаимодействовать с неродными элементами пользовательского интерфейса, которые часто встречаются в играх.

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

  • Различные условия срабатывания, например, активное (или неактивное) имя пакета приложения или отображение на экране определенного элемента (или его отсутствие).
  • Управление выполнением, например, максимальное количество выполнений, приоритет, соответствующий этап сканирования.
  • Нестандартные типы действий (условные, игнорирование элементов, закрытие экрана).

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

  • Пройдите важные рабочие процессы, чтобы добраться до сути функциональности приложения. Например, вы можете выполнить вход, настроить состояние приложения после первого запуска и зарегистрировать нового пользователя.
  • Сосредоточьте Robo на определенной части приложения, чтобы максимально эффективно использовать время теста Robo. Скрипт Robo направляет тест Robo к соответствующей части приложения, где тест Robo возобновляет полностью автоматизированное сканирование.
  • Переведите приложение в определенное состояние или экран для выполнения анализа, например, для анализа сообщения в приложении, политики конфиденциальности или определенного уровня игры.
  • Выполните сквозное инструментальное тестирование с использованием или без использования Robo-теста, возобновив полностью автоматизированное сканирование после завершения сценария Robo.

Используйте более продвинутые функции скрипта Robo, чтобы выполнить следующие действия:

  • Выполните действия до того, как Robo начнет сканирование тестируемого приложения или после завершения сканирования, например, очистите данные тестируемого приложения перед сканированием или измените настройки устройства.
  • Измените аспекты поведения Robo во время ползания, в частности:
    • Заставьте Robo игнорировать некоторые виджеты пользовательского интерфейса или экраны приложений.
    • Предоставьте Robo настраиваемое действие, которое он будет выполнять при возврате с определенного экрана.
    • Заставьте Robo выполнять определенные действия при каждом появлении определенного экрана приложения во время сканирования.
  • Полностью настройте, как Robo выполняет сканирование. Например, используйте комбинацию условных и безусловных действий, чтобы держать тестируемое приложение в фоновом режиме на протяжении всего сканирования, выполняя манипуляции с устройством и закрывая любые всплывающие диалоговые окна, которые появляются по ходу процесса.

Помните, что скрипты Robo не заменяют все виды тестов. Вам по-прежнему нужны модульные тесты для обнаружения низкоуровневых логических ошибок в вашем приложении; эти тесты обычно не требуют среды Android или iOS. Мы рекомендуем вам дополнять тесты скриптов Robo целевыми инструментальными тестами, которые могут иметь конкретные, подробные утверждения о бизнес-логике, которые лучше всего выражаются в коде.

Следующие шаги