Капибара / Полтергейст не оставляет видимых элементов видимыми
Я пытаюсь настроить автоматизированный набор тестов, используя capybara (v 2.4.3) и poltergeist (v 1.5.1)
Моя проблема заключается в том, что poltergeist нужно нажать на изображение (которое является ссылкой), которое отображается только в том случае, если вы наводите курсор мыши на другой элемент (см. Скриншот в ссылке).
(извините, но я пока не могу загрузить изображения, поэтому я связал свой скриншот выше)
Я раскрываю эти скрытые изображения с помощью этой команды:
find('div#userlogin div.colorswitch_languageswitch a.btn_earth').hover
весь тест выглядит так
it 'switches language to english', focus: true, js: true do
find('div#userlogin div.colorswitch_languageswitch a.btn_earth').hover
save_and_open_screenshot # to ensure the flags are displayed, this works
within('div#language_flags') do
click_link('Language_usa') # when I try to click it doesn't switch languages
end
page.should have_content('Login name (email)')
page.should have_content('Forgot password?')
end
Я уже включил функцию отладки в poltergeist, и кажется, что poltergeist нажимает на правильные координаты, но не нажимает на ссылку.
После этого я немного изменил вид и удалил атрибут стиля "display: none", поэтому изображения, на которые нужно щелкнуть, всегда видны. Тест сейчас проходит.
Итак, мой вопрос: как заставить poltergeist перемещать мышь к изображениям после наведения родительского элемента, как это сделал бы пользователь, чтобы они не исчезали
PS: если я забыл важную информацию, пожалуйста, дайте мне знать