Проблемы с xpath с несколькими тегами - PullRequest
0 голосов
/ 28 октября 2019

Я работаю на Java - Selenium. Мой код выглядит следующим образом:

<a _ngcontent-c6="" class="main-body-text" tabindex="0">Read more about <span _ngcontent-c6="" class="lowercase">Appointments.</span></a>

Я пытался

//a[text()= 'Read more about ']   and
//span[contains(text(),'Appointments.')]  

выбрать две отдельные ссылки, но когда я хочу проверить, существует или нет ссылка - она ​​не работает. Как написать xpath для этого?

@FindBy(xpath = "//span[contains(text(),'Appointments.')]")
@FindBy(xpath = "//a[normalize-space(text())='Read more about']")

Требуется один xpath для двух вышеупомянутых условий.

1 Ответ

0 голосов
/ 29 октября 2019

Варианты для получения a:
1. //a[contains(., 'Read more about') and contains(.,'Appointments')]
2. //a[contains(., 'Read more about') and ./span[.='Appointments.']]

Варианты для получения span:
1. //a[contains(., 'Read more about') and contains(.,'Appointments')]/span
2. //a[contains(., 'Read more about') and ./span[.='Appointments.']]/span
3. //span[.='Appointments.' and ./ancestor::a[contains(., 'Read more about')][1]]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...