如何通过Selenium和Java单击元素

时间:2018-12-10 09:40:47

标签: selenium selenium-webdriver xpath css-selectors webdriver

我试图单击该按钮,但我无法专注于此。

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

这是我的代码:

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

我不能使用“类”,因为它不是唯一的

请帮助我。

2 个答案:

答案 0 :(得分:0)

要单击文本为生产的元素,可以使用以下任一解决方案:

  • cssSelector

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

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

答案 1 :(得分:0)

好像您的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();