腳本問答題導致測試用例不穩定,DOM還沒加載出元素就執行了腳本導致報回錯,這種只要使用答顯式等待大部分都能解決。
###############
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from time import sleep # 實例化瀏覽器 driver = webdriver.Firefox() driver.get("https://www.baidu.com") element = (By.CSS_SELECTOR,'#kw') WebDriverWait(driver,10).until(EC.presence_of_element_located(element)).send_keys('admin') sleep(2) driver.quit() 可以分開寫: driver = webdriver.Firefox() driver.get("https://www.baidu.com") element = (By.CSS_SELECTOR,'#kw') wait = WebDriverWait(driver,10) element = wait.until(EC.presence_of_element_located(element)) element.send_keys('admin') sleep(2) driver.quit() 如果找不到元素,會報出一個異常,
################