WebDriver Chờ Trang tải Ví dụ

Trong hướng dẫn WebDriver này, chúng ta sẽ xem xét cách đợi một trang hoàn tất quá trình tải trước khi thực hiện các hành động khác. Hai ví dụ trong Java về chờ tải trang trong WebDriver.



Chờ Trang tải - Phương pháp # 1

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.');
}
} }


Chờ Trang tải - Phương pháp # 2

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);
} }

Đọc thêm: