Найдите два текстовых поля, которые, кажется, имеют один и тот же класс, используя селен рубин - PullRequest
0 голосов
/ 13 июня 2018

Я пишу простой скрипт для поиска и ввода текста в поля Имя и Фамилия для профиля веб-страницы в Firefox.Я перешел на страницу и осмотрел элемент, однако я перепробовал все, что мог придумать, найти элемент, но, похоже, ничего не работает.Как я могу найти эти поля, используя ruby, есть ли другой способ проверки поля?

Оба этих поля имеют метки полей

Имя проверки результата

<div class="input__label">First Name</div>
<div class="input_row">
<div class="split_control">
<input class="input__input_wide" step="any" value="Bob">

Фамилия проверить результат

<div class="input__label">Last Name</div>
<div class="input_row">
<div class="split_control">
<input class="input__input_wide" step="any" value="Smith">

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

Напишите xpath, как указано ниже

driver.find_element(xpath: "//div[normalize-space()='First Name']/following::input").send_keys "FirstName"

Для Фамилии

driver.find_element(xpath: "//div[normalize-space()='Last Name']/following::input").send_keys "LastName"
0 голосов
/ 13 июня 2018

Вы можете попробовать следующие x-пути:

  1. Элемент имени: //div[text()='First Name']/following-sibling::div/div/input
  2. Элемент фамилии: //div[text()='Last Name']/following-sibling::div/div/input

В коде

first_name = driver.find_element(:xpath, "//div[text()='First Name']/following-sibling::div/div/input")
first_name.send_keys "FName"

last_name = driver.find_element(:xpath, "//div[text()='Last Name']/following-sibling::div/div/input")
last_name.send_keys "LName"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...