У меня есть страница, которая имеет элементы, которые становятся видимыми при прокрутке вниз. Я пытаюсь выполнить тест, чтобы убедиться, что элементов нет, пока прокрутка не окажется в нижней части элементов, но я не могу понять, как передать размер с одного вызова (elementIdSize()
) на смещение прокрутки следующего звонка (scroll()
). По общему признанию, мой мозг еще не получил концепцию «обещаний» прошлых простых цепочек вызовов.Перемещение в нижней части элемента с помощью Webdriver.io
Я пытался что-то вроде этого:
this.browser
.setViewportSize({width: 1000, height: 600})
.element(selector)
.then(function(e) {
console.log('then element: ', e);
element = e;
})
.elementIdSize(element.id)
.then(function(size) {
console.log('Size: ', size);
})
.call(callback);
который я надеялся, что будет использовать переданное в селектор, чтобы получить элемент, установите элемент в then()
, а затем вызвать elementIdSize()
на ID элемента, но var element
никогда не устанавливается из вызова element()
, и объекты, которые я возвращаю, по-видимому, не являются тем, что я пытаюсь получить в любом случае. Я чувствую, что это простая часть знаний, которую я здесь отсутствует, что сделает все это «щелчком».
Я использую API here для поиска вызовов Webdriver, но документация не дает много деталей.
Я не видел 'getSize()' в API WebDriver. Есть ли где-нибудь лучше набор документации, или это одна из тех вещей, где вам просто нужно прорыть код и посмотреть, что там? – CodeChimp
dang Я ошибался .. команда называется getElementSize http://webdriver.io/api/property/getElementSize.html .. обновил пример кода – ChristianB