日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Selenium_等待页面加载完毕

發布時間:2024/9/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Selenium_等待页面加载完毕 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

隱式等待

WebDriver driver = new FirefoxDriver();driver.get("www.baidu.com"); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);WebElement element = driver.findElement(By.cssSelector(".abc")); ((JavascriptExecutor)driver).executeScript("arguments[0].style.border = \"5px solid yellow\"",element);

注:隱式等待設置的內容在driver的整個生命周期都有效,所以實際使用過程當中有弊端。

  等待20秒元素還不存在,就會拋出異常 ?org.openqa.selenium.NoSuchElementException

顯式等待

顯式等待 使用ExpectedConditions類中自帶方法, 可以進行顯試等待的判斷。?

顯式等待可以自定義等待的條件,用于更加復雜的頁面等待條件

等待的條件

WebDriver方法

頁面元素是否在頁面上可用和可被單擊

elementToBeClickable(By locator)

頁面元素處于被選中狀態

elementToBeSelected(WebElement element)

頁面元素在頁面中存在

presenceOfElementLocated(By locator)

在頁面元素中是否包含特定的文本

textToBePresentInElement(By locator)

頁面元素值

textToBePresentInElementValue(By locator, java.lang.String text)

標題 (title)

titleContains(java.lang.String title)

只有滿足顯式等待的條件滿足,測試代碼才會繼續向后執行后續的測試邏輯

如果超過設定的最大顯式等待時間閾值, 這測試程序會拋出異常。

public static void testWait2(WebDriver driver){driver.get("www.baidu.com"); WebDriverWait wait = new WebDriverWait(driver, 20);wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector(".abc")));WebElement element = driver.findElement(By.cssSelector(".abc")); ((JavascriptExecutor)driver).executeScript("arguments[0].style.border = \"5px solid yellow\"",element); }

總結

以上是生活随笔為你收集整理的Selenium_等待页面加载完毕的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。