Использование Selenium и условного xpath для щелчка элемента - PullRequest
0 голосов
/ 03 ноября 2019

В настоящее время я учусь использовать селен для автоматизации тестирования. Одна из моих задач - перейти на следующую страницу сайта. Копия xpath, которую я скопировал с определенной кнопки, выглядит следующим образом:

xpath = '//*[@id="pagination"]/div/div[1]/a[4]'

Поэтому, когда я использую driver.find_element_by_xpath (xpath) .click (), я перехожу на следующую страницу.

Чтобы просмотреть несколько страниц, я хотел бы найти указанный элемент на основе условия, что текст равен правильной странице.

Для этого я попытался использовать следующий условный xpath:

xpath = // * [@ id = "pagination"] / div / div [1] / a [text ()= 'page_num']

где page_num - это конкретная страница, на которой я хочу щелкнуть.

Пример: для следующего элемента я бы использовал xpath:

element = <a href="javascript:void(0);" data-spm-anchor-id="a2g0s.ds-center.0.0">2</a> 

xpath = //*[@id="pagination"]/div/div[1]/a[text()='2']

Я ожидаю, что selenium перейдет на указанную страницу, но вместо этого я получу сообщение об ошибке, что xpath не существует.

Каким должно быть правильное имя условного xpath?

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