Как использовать watir with children / xpath для нажатия кнопки? - PullRequest
0 голосов
/ 22 января 2020

Я хочу написать общий c код для нажатия на кнопку.

Итак, я получаю класс от div. И дочерний элемент - кнопка. Я получаю доступ к дочернему элементу с помощью xpath. not generi c).

browser.button(:text => 'Submit').click

Что я делаю не так?

В моем случае это имя не "submit". Оно часто отличается. Только класс всегда то же самое.

Chrome: 79.0.3945.130

Селен: 3.141.0

1 Ответ

0 голосов
/ 22 января 2020

Измените первую строку, как показано ниже.

button = browser.div(class: /sp-m-cookies-container/).button(xpath: './button').wait_until(timeout: 100, &:present?)

element(xpath: './*') слишком обобщенно c, который вернет первый элемент независимо от того, является ли он кнопкой.

Если вы думаете нормальный щелчок работает, тогда вы можете использовать fire_event: onclick для запуска события щелчка, как показано ниже.

button.fire_event :onclick
...