Если вы используете Appium с клиентом webdriverio для тестирования своего веб-приложения на эмуляторе IOS с помощью браузера Safari и хотите закрыть клавиатуру, нажав кнопку «Готово», вы попали в нужное место!

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

Вот мой случай, мне нужно было нажать кнопку «Готово» над клавиатурой.
Ни browser.hideKeyboard(), ни browser.hideKeyboard('pressKey', 'Done') мне не подошли.

Вот решение:

Вот причина:

Когда вы тестируете свое веб-приложение в сафари, есть 2 контекста. Первый — NATIVE_APP, а второй — ваше веб-приложение. Поскольку мы хотим щелкнуть элемент, принадлежащий IOS, нам нужно переключить контекст на NATIVE_APP.

Кроме того, если вы хотите нажимать кнопки перемещения вверх и вниз, вы можете использовать этот метод.

🐣