亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

何時在Selenium Webdriver中使用顯式等待vs隱式等待?

何時在Selenium Webdriver中使用顯式等待vs隱式等待?

鴻蒙傳說 2019-11-23 15:15:20
何時在Selenium Webdriver中使用顯式等待vs隱式等待?我在用:driver.manage().timeouts().implicitlyWait(180, TimeUnit.SECONDS);但是對于下面的元素,它仍然會不斷失敗    driver.findElement(By.id("name")).clear();     driver.findElement(By.id("name")).sendKeys("Create_title_01");我添加了等待代碼:for (int second = 0;; second++) {         if (second >= 120) fail("timeout");         try { if (isElementPresent(By.id("name"))) break; } catch (Exception e) {}         Thread.sleep(1000);     }不應該隱含等待,直到找到一個元素?如果我使用顯式等待而不是我添加的代碼,它會更好Thread.sleep()嗎?
查看完整描述

3 回答

?
qq_笑_17

TA貢獻1818條經驗 獲得超7個贊

隱式等待 - 它是適用于所有元素的全局設置,如果元素在指定時間之前出現,則腳本將開始執行,否則腳本將拋出NoSuchElementException。在setup方法中使用的最佳方法。只影響By.findelement()

Thread.sleep()- 它將為腳本休眠時間,而不是在腳本中使用的好方法,因為它無條件地睡眠。如果5%的情況下2秒不夠怎么辦?

顯式等待:等待指定包含/屬性更改。當應用程序向系統提供AJAX調用并獲取動態數據并在UI上呈現時,會使用更多。在這種情況下WebDriverWait是合適的。



查看完整回答
反對 回復 2019-11-24
  • 3 回答
  • 0 關注
  • 352 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號