例如,在页面上,我有汽车列表,所有汽车都有相同的按钮,例如“选择”(所有选择按钮的位置都相同):
在我的代码中,我使用它来获取汽车的WebElement列表:
List<WebElement> allCars = driver.findElements(By.Xpath(ListOfAvailableCars));
然后,我要获得第5辆车的WebElement,并找到这辆车的选择按钮:
allCars.get(4).findElement(By.Xpath(SelectButtonLocator)).click();
但是在列表中的第一辆车上按下了“选择”按钮。
是否可以仅在此特定元素中定位按钮和其他元素(仅将Webdriver限制为该元素)?
答案 0 :(得分:0)
只需为每辆车的按钮创建一个定位器。
使用 List<WebeElement>
查找所有按钮,然后按索引单击它们。
list.get(1).click();
第二种解决方案是为每个按钮创建xpath定位器。
第一辆车
driver.findElement(By.xpath("(//button[@id='something'])[1]")).click();
答案 1 :(得分:0)
找到您的webElement
List<WebElement> allCars = driver.findElements(By.Xpath(ListOfAvailableCars)/following-sibling::SelectButtonLocator);
然后
allCars.get(4).click()
希望它会有所帮助。 如有可能,请分享屏幕截图
答案 2 :(得分:0)
谢谢大家!
通过添加“”解决了此问题。到Xpath。 @Grasshopper解决方案有效。