1. 程式人生 > >selenium driver.get(url) 頁面載入時間太長

selenium driver.get(url) 頁面載入時間太長

在執行自動化測試用例過程中,發現因為網路慢或其他原因導致driver.get(url) 時,頁面一直在載入,頁面沒有載入完成就不會去繼續執行下面的動作,但是實際上需要操作的元素已經加載出來了。

解決方法

第一步:使用 set_script_timeout() 設定等待最大時間。

第二步:到了最大等待時間後頁面如果仍然沒有載入完成,執行js程式碼, driver.execute_script("window.stop()") 停止頁面載入,執行下面的自動化測試步驟。
程式碼如下:

driver = self.driver
        # 設定頁面最大載入時間
        driver.set_page_load_timeout(10)
        try:
            driver.get(self.base_url)
        except TimeoutException:
            print '!!!!!!time out after 10 seconds when loading page!!!!!!'
            # 當頁面載入時間超過設定時間,通過js來stop,即可執行後續動作
            driver.execute_script("window.stop()")