0
使用selenium driver
,我需要知道頁面何時完成加載。如何知道何時完成加載頁面?
當您導航到新頁面時,selenium會執行此操作。但是,我點擊了一個按鈕,我需要知道下一頁何時加載。
有沒有辦法像wait_for_loading_complete
這樣做?
使用selenium driver
,我需要知道頁面何時完成加載。如何知道何時完成加載頁面?
當您導航到新頁面時,selenium會執行此操作。但是,我點擊了一個按鈕,我需要知道下一頁何時加載。
有沒有辦法像wait_for_loading_complete
這樣做?
我不認爲硒具有檢查頁面加載的內置解決方案。 但我們可以建立一個方法來驗證相同的。一些例子如下,但根據具體情況可能有更多。
1:
public void waitUntilPageLoaded(long timeoutSeconds) {
WebDriverWait wait = new WebDriverWait(driver, timeoutSeconds);
wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//body")));
}
第二:
public void waitUntilPageLoaded(long timeoutSeconds) {
ExpectedCondition<Boolean> pageLoadFinishedCondition = new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver driver) {
return ((JavascriptExecutor) driver).executeScript(
"return document.readyState").equals("complete");
}
};
WebDriverWait wait = new WebDriverWait(driver, timeoutSeconds);
wait.until(pageLoadFinishedCondition);
}
3:
public void waitUntilPageLoaded(int timeoutSeconds, By locator) {
new WebDriverWait(driver, timeoutSeconds).until(ExpectedConditions.presenceOfElementLocated(locator));
}
對不起,我用Java實現,但應該很容易將它們轉換爲C# –