我正在测试的页面有2个具有相同名称的元素,我需要单击第二个元素。 我可以使用以下方法获取元素:
driver.findElements(By.linkText("Services"));
但我不知道第二个元素如何click
。
答案 0 :(得分:16)
有两种方法可以做到这一点:
1)使用xpath,尝试以下方式。
driver.findElement(By.xpath("('xpath of the link')[2]"));//If you had given html, I could have added exact xpath.
2)使用findElements(),您可以尝试以下操作:
List<WebElement> li = driver.findElements(By.linkText("Services"));;
li.get(1).click();//If there are only two such element, here 1 is index of 2nd element in list returned.
希望你能得到这个想法。 :)
答案 1 :(得分:0)
或者简称,你可以做到
driver.FindElements(By.ClassName("drop"))[1].Click();
答案 2 :(得分:0)
如果你使用的是python,你可以试试这种方式:
li = driver.findElements(By.linkText("Services"))[index].click()