WebDriver počakajte, da stran naloži primere

V tej vadnici za WebDriver si oglejte, kako počakati, da se stran dokonča, preden se lotite drugih dejanj. Dva primera v Javi v čakanju na nalaganje strani v WebDriver.



Počakajte, da se stran naloži - 1. način

import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.support.ui.ExpectedCondition; import org.openqa.selenium.support.ui.WebDriverWait; import org.testng.Assert; public class WaitForPageExample {
WebDriver driver = new FirefoxDriver();
public void waitForPageLoaded() {
ExpectedCondition expectation = new


ExpectedCondition() {



public Boolean apply(WebDriver driver) {




return ((JavascriptExecutor) driver).executeScript('return document.readyState').toString().equals('complete');



}


};
try {

Thread.sleep(1000);

WebDriverWait wait = new WebDriverWait(driver, 30);

wait.until(expectation);
} catch (Throwable error) {

Assert.fail('Timeout waiting for Page Load Request to complete.');
}
} }


Počakajte, da se stran naloži - 2. način

import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.support.ui.ExpectedCondition; import org.openqa.selenium.support.ui.WebDriverWait; public class WaitForPageExample {
public void waitForLoad(WebDriver driver) {
ExpectedCondition pageLoadCondition = new


ExpectedCondition() {



public Boolean apply(WebDriver driver) {




return ((JavascriptExecutor)driver).executeScript('return document.readyState').equals('complete');



}


};
WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(pageLoadCondition);
} }

Nadaljnje branje: