package was.common.utility;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.ui.WebDriverWait;
import com.google.common.base.Function;
public class CommonTasks {
WebDriver driver;
/**
* This method is for waiting until page is ready
* if document.readyState = complete?
*
* @param driver
*/
public static void waitForPageLoad(WebDriver driver){
Function<WebDriver,Boolean> waitFn = new Function<WebDriver,Boolean>(){
@Override
public Boolean apply(WebDriver driver){
return ((JavascriptExecutor)driver).executeScript("return document.readyState")
.equals("complete");
}
};
WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(waitFn);
}
}
调用:
WebDriver dirver = new FirefoxDriver();
CommonTasks.waitForPageLoad(dirver);