我尝试自动化的页面在不同级别有相同的按钮。这n个按钮具有相同的属性。可以说,如果我想点击第二个,我怎么能用webdriver和CSS来做,谢谢。
答案 0 :(得分:1)
例如说,唯一属性是class ='custom_button',你可以使用
List <WebElement> custButtons = driver.findElements(By.className("custom_button"));
custButtons.get(2).click();
这将点击页面上类名为“custom_button”的第三个按钮。
答案 1 :(得分:1)
Prashant Shukla有正确的答案。
无论如何,如果你想用一个命令在一行上完成它:
我不知道如何使用单个CSS选择器(即使像:nth-child()
这样的伪选择器也不允许这样做)。但有人可能知道答案。我可以提出的是一个XPath选择器。诀窍是使用descendant
轴。
例如,如果您想在页面上选择第二个<a class='post-tag'>
元素(恰好是此页面上的webdriver
标记:)),无论其他什么,您都可以:
driver.findElement(By.xpath("/descendant::a[@class='post-tag'][2]"));