Введение в пользовательские и расширенные мобильные команды в WebdriverIO
Тестирование мобильных приложений и мобильных веб-приложений имеет свои собственные проблемы, особенно когда речь идет о специфических различиях между платформами Android и iOS. Хотя Appium предоставляет гибкость для работы с этими различиями, часто требуется глубокое погружение в сложную, зависящую от платформы документацию (Android, iOS) и команды. Это может сделать написание тестовых скриптов более трудоемким, подверженным ошибкам и сложным для поддержки.
Чтобы упростить этот процесс, WebdriverIO представляет пользовательские и расширенные мобильные команды, специально разработанные для тестирования мобильных веб-приложений и нативных приложений. Эти команды абстрагируют сложности базовых API Appium, позволяя писать лаконичные, интуитивно понятные и независимые от платформы тестовые скрипты. Сосредоточившись на простоте использования, мы стремимся уменьшить дополнительную нагрузку при разработке скриптов Appium и дать вам возможность без усилий автоматизировать мобильные приложения.
Почему пользовательские мобильные команды?
1. Упрощение сложных API
Некоторые команды Appium, такие как жесты или взаимодействия с элементами, требуют подробного и сложного синтаксиса. Например, выполнение действия долгого нажатия с использованием нативного API Appium требует ручного построения цепочки action:
const element = $('~Contacts')
await browser
.action( 'pointer', { parameters: { pointerType: 'touch' } })
.move({ origin: element })
.down()
.pause(1500)
.up()
.perform()
С пользовательскими командами WebdriverIO то же самое действие можно выполнить с помощью одной выразительной строки кода:
await $('~Contacts').longPress();
Это значительно уменьшает шаблонный код, делая ваши скрипты чище и понятнее.