Я запускаю тест в веб-приложении, используя Ruby-Watir-Rspec. Это очень просто, так как я начинающий.
Я открываю форму и вводю необходимую информацию, но кнопка «Создать» не находится в видимой области, поэтому я получаю сообщение:
Failure/Error: @browser.button(class: xxx).click
Watir::Exception::UnknownObjectException:
element located, but timed out after 30 seconds, waiting for #<Watir::Button: located: true; {:class=>xxx, :tag_name=>"button"}> to be present
Caused by:
# Selenium::WebDriver::Error::ElementNotVisibleError:
# element not interactable
Если я прокручиваю во время работы скрипта, он нажимает на кнопку, и тест проходит успешно.
Я пробовал scroll.to, wait_until_present, прокручивал до координат, scroll_into_view, ни один из них не работал.
Единственный способ заставить его работать - несколько раз поместить "@ browser.send_keys: tab", пока он не достигнет кнопки внизу формы.
Я полагаю, что проблема в том, что кнопка находится внутри формы , которая не занимает всю страницу (за формой находится карта, поэтому у части страницы нет опции прокрутки). .so есть ли способ прокрутки внутри формы? Или вы знаете какой-то другой подход к поиску этой кнопки? Любая подсказка приветствуется.
Кстати, страница развернута.
Вот фрагмент кода, просто:
it 'should create the place' do
@browser.button(class: xxx).click
end