Как нажать на элемент внутри тега span?- селен - PullRequest
0 голосов
/ 08 апреля 2019

Привет. Я пытаюсь нажать на конкретную кнопку с текстом «€ 11» на веб-драйвере селена в Java.

Кнопка находится в этом формате, и на странице есть еще одна кнопка с точно таким же кодом, но другой ценой:

<button type="button" class="bui-button bui-spacer--medium bui-button--primary bui-button--wide">
<span class="bui-button__text">€11</span>
</button>

Как бы я это сделал. Любая помощь приветствуется:)

Полный CSS

Ответы [ 2 ]

0 голосов
/ 09 апреля 2019

Я знаю несколько способов, которые могли бы помочь

javascript:

document.querySelector("span.bui-button__text").click()

jquery:

$("body > button > span").click()

Selenium (Java):

driver.findelement(By.cssSelector("button[class='bui-button bui-spacer--medium bui-button--primary bui-button--wide']").click()

Я надеюсь, что они вам помогут!

0 голосов
/ 08 апреля 2019

Несколько вариантов, которые вы можете использовать:

driver.findElement(By.xpath("//span[contains(text(),'€11')]")).click();

Нажмите первую кнопку, используя это:

driver.findElement(By.xpath("(//span[@class='bui-button__text'])[1]")).click();

Нажмите вторую кнопку, используя это:

driver.findElement(By.xpath("(//span[@class='bui-button__text'])[2]")).click();

Примечание: используйте время ожидания, если у вас есть какие-либо задержки в размере загрузки

...