Как щелкнуть элемент через Selenium и Java

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

<td style = "width:100%;height:63px" class = "leftNavTabNormal nopad" onclick = "selectPerspective('Production')">Production</td>

Это мой код:

driver.findElement(By.xpath("//*[@onclick='selectPerspective(Production)']")).click();

Я не могу использовать "класс", потому что он не уникален.

Пожалуйста помогите.

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

Ishita Shah 10.12.2018 10:42

Пожалуйста, поделитесь дополнительными фрагментами HTML для лучшего понимания. потому что мы не можем найти кнопку в вашем HTML-коде. Это просто тег TD.

BhavinD. 10.12.2018 11:11

Спасибо, но это не работает

Igal Hudaidatov 02.01.2019 14:56
Blibli Automation Journey - Как захватить сетевой трафик с помощью утилиты HAR в Selenium 4
Blibli Automation Journey - Как захватить сетевой трафик с помощью утилиты HAR в Selenium 4
Если вы являетесь веб-разработчиком или тестировщиком, вы можете быть знакомы с Selenium, популярным инструментом для автоматизации работы...
1
3
54
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Чтобы щелкнуть элемент с текстом Производство, вы можете использовать любое из следующих решений:

  • cssSelector:

    driver.findElement(By.cssSelector("td.leftNavTabNormal.nopad[onclick*='Production']")).click();
    
  • xpath:

    driver.findElement(By.xpath("//td[@class='leftNavTabNormal nopad' and text()='Production']")).click();
    

Похоже, ваш xpath пропустил апостроф

Вот код вашей страницы

<td style = "width:100%;height:63px" class = "leftNavTabNormal nopad" onclick = "selectPerspective('Production')">Production</td>

Вот ваш код автоматизации

driver.findElement(By.xpath("//*[@onclick='selectPerspective(Production)']")).click();

Вот правильный код с апострофом

driver.findElement(By.xpath("//*[@onclick='selectPerspective('Production')']")).click();

Другие вопросы по теме