Я создаю набор тестов (используя Geb / Spock) для веб-сайта.В одном из них элемент, к которому я хочу получить доступ, находится в верхней части страницы, поэтому, чтобы убедиться, что он виден, я хочу прокрутить до верхней части страницы.
Используемая мной командаis:
browser.js.exec ('window.scrollTo (0, 0);')
или его варианты, например
js.exec ('window.scrollTo (0, 0);')
или другой альтернативный вариант, например:
js.exec ('window.scrollBy (0, -250); ')
Ни один из них не заставляет страницу прокручиваться вверх, и при выполнении я получаю следующую ошибку (это единственная ошибка, других отзывов нет).Сообщение об ошибке, использующее другие перечисленные выше параметры, идентично (кроме самой команды):
Condition not satisfied:
browser.js.exec('window.scrollTo(0, 0);')
| | |
| | null
| geb.js.JavascriptInterface@4019094f
geb.Browser@3dcac33e
at UserCreatesCompany.Go to Home Page and click on the log to
GitHub button as user User1(UserCreatesCompany.groovy:170)
Я не могу интерпретировать сообщение о том, что exec является нулем.Что именно это значит?Чтобы сделать вещи более интересными, в конце этого сценария я выполняю следующую процедуру очистки
js.exec('window.scrollTo(0, document.body.scrollHeight);')
DeleteButton.click()
$("button",'data-automation-id':"button-modal-yes").click()
}
, и она работает хорошо: страница прокручивается вниз.Таким образом, не возникает проблем с отсутствующей библиотекой.Любое предложение о том, что я могу делать неправильно?
Версия различных компонентов, которые я использую:
groovyVersion = '2.5.4'
gebVersion = '2.3'
seleniumVersion = '3.141.59'
chromeDriverVersion = '2.45'