有没有办法,如何等待页面重新加载?例如,当我位于 localhost:9000/web
页面时,我再次指示 Webdriver 导航到 localhost:9000/web
。我不想或无法通过等待某些元素来指示重新加载。
最佳答案
在 Selenium WebDriver 中,我们可以使用以下代码片段实现 waitForPageToLoad :
public void waitForPageToLoad(WebDriver driver) {
ExpectedCondition < Boolean > pageLoad = new
ExpectedCondition < Boolean > () {
public Boolean apply(WebDriver driver) {
return ((JavascriptExecutor) driver).executeScript("return document.readyState").equals("complete");
}
};
Wait < WebDriver > wait = new WebDriverWait(driver, 60);
try {
wait.until(pageLoad);
} catch (Throwable pageLoadWaitError) {
assertFalse("Timeout during page load", true);
}
}
关于Selenium webdriver - 等待页面重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19552485/