Как изменить значение слайдера iOS через Appium / WebdriverIO - PullRequest
0 голосов
/ 29 марта 2020

Я тестирую свое приложение React Native, используя Appium и WebdriverIO. Имея трудности с изменением значений ползунка.

Обычно в XCUITest я могу легко добиться этого, используя следующий код:

app.sliders["slider-red"].adjust(toNormalizedSliderPosition: 0)

Как сделать эквивалент в Appium / WebdriverIO? Я где-то читал, что я должен вызвать sendKeys (). Я попробовал следующее:

$('~slider-red').sendKeys(['0']);

Но выдает следующую ошибку:

недопустимое состояние элемента: Ошибка домена = com.facebook.WebDriverAgent Code = 1 "Включено клавиатура должна присутствовать для отправки клавиш "

Похоже, sendKeys предназначен для полей ввода, а не для ползунков!

1 Ответ

0 голосов
/ 30 марта 2020

Вы можете попробовать использовать мобильные жесты, которые Appium предоставляет для запуска стандартных команд не-W3 C. В вашем случае это команда mobile: selectPickerWheelValue, более подробная информация здесь :

const elementId = $(pickerwheel_locator).elementId
browser.execute('mobile: selectPickerWheelValue',
        {
            'order': 'next',
            'offset': 0.15,
            'element': elemId
        });

Насколько я помню, она работает так

...