Найти локатор с текстом (Robotframework) - PullRequest
0 голосов
/ 11 марта 2019

Из этого кода, как показано ниже:

<a href="javascript:;" id="cTDQo7-a" class="z-menu-cnt z-menu-cnt-img"><span id="cTDQo7-img" class="z-menu-img"></span> payment</a>
<span id="cTDQo7-img" class="z-menu-img"></span>
 "payment"

Я хотел бы получить ключевое слово использования локатора, но слово "payment" - это большая часть страницы, например payment1, payment2, payment3, а id - нетуникальный.

Я пытался использовать приведенный ниже код, но у меня не получилось.

//a[contains(.,'payment')]

//span[@class='z-menu-img'] [contains(.,'payment')]

//span[@class='z-menu-img'] and [contains(.,'payment')]

//span[@class='z-menu-img'] contains(.,'payment')

1 Ответ

1 голос
/ 11 марта 2019

Вариант 1: использовать другие атрибуты в сочетании с текстом

//a[@class='z-menu-cnt z-menu-cnt-img' and normalize-space(.)='payment']

Вариант 2: укажите позицию, если у вас есть несколько элементов без уникальных атрибутов / путь

(//a[contains(.,'payment')])[1]

Второй xpath будет идентифицировать первое вхождение ссылки, содержащей текст «оплата». Вы можете изменить тэг и индекс в зависимости от ваших интересов.

...