在xpath查询中获取具有相同属性的第一个元素

时间:2018-10-03 13:10:43

标签: java selenium-webdriver xpath

我在https://www.mister-auto.com上 我想选择菜单中具有属性data-selenium='link_front_generic'

的第一项

所以我尝试了以下代码:

 driver.findElement(By.xpath("(.//*[@data-selenium='link_front_generic'])[1]")).click();

但是,找不到该项目

我有一个例外: org.openqa.selenium.ElementNotVisibleException:元素不可见

1 个答案:

答案 0 :(得分:0)

该元素不可见,因为它位于菜单包装中,并且未被触发。

您可以尝试以下代码。

Actions actions = new Actions(driver);
WebElement menu = driver.findElement(By.xpath("//a[text()='Pièces auto']"));
actions.moveToElement(menu);

WebElement subMenu = driver.findElement(By.xpath("//a[@title='Plaquette de frein']"));
actions.moveToElement(subMenu);
actions.click().build().perform();