# -*- coding:utf-8 -*- """ implicitly_wait():隱式等待 當使用了隱士等待執行測試的時候,如果 WebDriver沒有在 DOM中找到元素,將繼續等待,超出設定時間后則拋出找不到元素的異常 換句話說,當查找元素或元素並沒有立即出現的時候,隱式等待將等待一段時間再查找 DOM,默認的時間是0 一旦設置了隱式等待,則它存在整個 WebDriver 對象實例的聲明周期中,隱式的等到會讓一個正常響應的應用的測試變慢, 它將會在尋找每個元素的時候都進行等待,這樣會增加整個測試執行的時間。 """ from selenium import webdriver import time driver = webdriver.Firefox() driver.get('http://demo.tutorialzine.com/2009/09/simple-ajax-website-jquery/demo.html') #等待10秒 driver.implicitly_wait(10) driver.find_element_by_link_text("Page 4").click() message = driver.find_element_by_id('pageContent') #等待 Ajax 的內容出現 time.sleep(4) print "Nunc nibh tortor" in message.text