1 回答
TA贡献1871条经验 获得超13个赞
您正在看到预期的行为。如果您的用例是打印所有值,然后在文本为Angolaclick()
的元素上打印,您可以使用以下定位器策略:
driver.get("https://some-url.com");
driver.findElement(By.xpath("//*[@id='example']/div[4]/div/div[2]/div[4]/div[1]/div[6]/div/input[2]")).click();
System.out.println(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//div[@class='menu transition visible']/div"))).stream().map(element->element.getAttribute("innerHTML")).collect(Collectors.toList()););
List<WebElement> allOptions = driver.findElements(By.xpath("//div[@class='menu transition visible']/div"));
for (int i = 0; i < allOptions.size(); i++) {
if (allOptions.get(i).getText().equalsIgnoreCase("Angola")) {
allOptions.get(i).click();
break;
}
}
添加回答
举报