翻译 selenium官方文档
显式等待
显式等待是您定义的代码,用于在继续执行代码之前等待某个条件发生。最糟糕的情况是Thread.sleep(),将条件设置为等待的确切时间段。有一些便利方法可以帮助您编写只需要等待的代码。
WebDriverWait结合使用ExpectedCondition是一种方法。
WebDriver driver = new FirefoxDriver();
driver.get("http://somedomain/url_that_delays_loading");
WebElement myDynamicElement = (new WebDriverWait(driver, 10))
.until(ExpectedConditions.presenceOfElementLocated(By.id("myDynamicElement")));