В дополнение к базовым настройкам возможностей Appium также предоставляет множество вспомогательных элементов конфигурации для оптимизации автоматического тестирования. Эти элементы конфигурации предназначены для выполнения дополнительных операций помимо базовой конфигурации. Например: указание псевдонима устройства, идентификатора устройства или установка тайм-аута и т. д. Хотя эти параметры не являются обязательными, для достижения более эффективного тестирования обычно рекомендуется добавлять их соответствующим образом в зависимости от тестовой ситуации.
Представлен официальный документ о возможностях драйвера xcuitest (UAutomator можно использовать в качестве справочника).
имя_устройства используется только как псевдоним устройства и не может однозначно определить устройство.
пример Python
caps["appium:deviceName"] = "emulator-5554"
Использование UDID устройства гарантирует, что при одновременном подключении нескольких устройств указанное устройство будет точно выбрано для автоматического тестирования. Если UDID не установлен, по умолчанию будет считываться первое устройство в списке. Если подключено только одно устройство, его не нужно устанавливать.
Чтобы получить список устройств, используйте команду adb devices:
Как показано на рисунке, уникальный идентификатор устройства, подключенного на рисунке ниже, — 127.0.0.1:7555.
UDID устройства можно указать через поле «udid» в возможностях.
пример Python
## не идентифицирует однозначно устройство
caps["appium:deviceName"] = "emulator-5554"
## Может однозначно идентифицировать устройство
caps["udid"] = "hogwarts001"
Appium может установить период таймаута, в течение которого программа должна ждать новых команд от клиента. По истечении таймаута сессия будет удалена. Имеет время ожидания по умолчанию 60 с. Изменение времени на 0 отключает настройку.
Укажите время ожидания в секундах в поле «newCommandTimeout» в возможностях.
пример Python
## Продолжительность может быть соответствующим образом увеличена в соответствии с этапами, необходимыми для проведения теста.
caps["appium:newCommandTimeout"] = 3600
PRINT_PAGE_SOURCE_ON_FIND_FAILURE
В возможностях noReset, если true, указывает драйверу приложения избегать обычной логики сброса во время запуска и очистки сеанса (по умолчанию — false).
Однако существуют некоторые различия в способе обработки noReset на платформах Android и iOS.
Подвести Вставай, нет перезагрузки существовать Android Платформа может сохранять последнее состояние каждый раз при запуске приложения, но существовать iOS платформа, независимо от настроек true все еще false , состояние приложения обычно сбрасывается. существовать iOS Сохранение состояния приложения на платформе требует дополнительных методов.
Указывает, должно ли приложение завершать работу после завершения сеанса. Значение по умолчанию — правда, если установлена только функция noReset true.
Указывает, следует ли принудительно перезапускать приложение, если оно уже запущено на момент запуска сеанса. Значение по умолчанию — true, пока не установлен noReset.