上一篇介紹了關於如何啟動瀏覽器的方法。這篇文章要介紹一下,上一篇代碼中關於等待時間的接口方法,代碼如下:
driver.manage().timeouts().pageLoadTimeout(5, TimeUnit.SECONDS);
在調用timeouts()接口之前,我們調用了manage()接口,這個接口下的操作都是用來控制瀏覽器本身的。
timeout接口有以下三種常用的接口。
implicitlyWait():隱式時間等待是在查找元素的時候,設置一個最大時間值,如果driver第一次沒有找到網頁元素,那么就繼續找,直到消耗了設置的最大時間值,還是沒有找到,那么就拋出沒有找到元素的異常。如果在設置時間范圍內就找到了該元素,那么就執行下一行代碼,不需要再等時間,這就是隱式等待的含義。所以,隱式時間等待一般結合查找網頁元素一起。
setScriptTimeout(),作用是,在設置規定的時間內,等待異步腳本的執行結束,而不是里面拋出錯誤。這個在執行javascript腳本的時候可能會使用。
pageLoadTimeout(),字面意思就網頁加載超時,作用就是在設置規定時間內,等待網頁完整加載完成,而不是里面拋出錯誤。我們知道如果網速慢,或者網頁元素太多,例如網頁做了大面積渲染,肯定會造成網頁加載速度變慢。這個接口的作用就是,來處理這類問題的。
注意使用timeouts()接口時不要忘記導入接口包
import java.util.concurrent.TimeUnit;
以上就是關於等待時間的接口方法的介紹了,下一篇,我將介紹一下關於Windows接口。