Как с помощью автотеста кликнуть по кнопке на popup, который появляется при клике на элемент и исчезает, если мышь от него отвести?

Пишу автотест на Selenium WebDriver + C# для перехода по ссылке при нажатии на кнопку, расположенную на popup (элементы нахожу при помощи CSS-локатора).
Popup появляется, если кликнуть на определенный элемент.
Данный popup исчезает, если отвести от него курсор мыши.
При попытке кликнуть по кнопке методом click() - popup исчезает и автотест кликает на элемент, который был расположен за popup`ом.
Пытался перейти через Actions при помощи moveToElement().ckick().build().perform(), в итоге popup просто исчезает и выбрасывается исключение ("не найден элемент").
Пробовал также кликнуть с помощью JavaScript Excecutor, кликнуть получилось, но выбрасывает в верх текущей страницы, а по ссылке не переходит.
Вручную все работает.
  • Вопрос задан
  • 470 просмотров
Пригласить эксперта
Ответы на вопрос 2
@taktik
Sr. QA automation | SDET
Как сделать именно так, как ты хочешь, не знаю, но можно немного схитрить и решить по другому:
1) вызываешь popup, проверяшь, что он открылся и что кнопка на месте
2) просто вебдрайвером переходишь по url на который должна вести кнопка
Ответ написан
Комментировать
hprot
@hprot
QA
Попробуй так:
driver.findElement(By.id(element_id)).getLocation()
driver.mouseMove(coordinates.getX(),coordinates.getY())

Если попап появляется выше\ниже\сбоку, добавь еще одно перемещение мыши. Далее просто клик.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы