我想对两个元素使用 wait.until(ExpectedConditions)
。
我正在运行一个测试,我需要 WebDriver
等待 Element1 OR Element2 出现。然后我需要选择先出现的人。我试过:
WebDriverWait wait = new WebDriverWait(driver, 60);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//h2[@class='....']"))) || wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//h3[@class='... ']")));
// Then I would need:
String result = driver.findElement(By.xpath("...")).getText() || driver.findElement(By.xpath("...")).getText();
总而言之,我需要等到两个元素中的任何一个出现。然后选择出现的人(他们不能同时出现) 请帮忙。
最佳答案
现在有一个本地解决方案,或
方法,check the doc .
你可以这样使用它:
driverWait.until(ExpectedConditions.or(
ExpectedConditions.presenceOfElementLocated(By.cssSelector("div.something")),
ExpectedConditions.presenceOfElementLocated(By.cssSelector("div.anything"))));
关于java - wait.until(ExpectedConditions.visibilityOf Element1 或 Element2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14840884/