Selenium之自動化常遇問題

1.等待方式的選擇web

你們都知道Selenium中等待方式有三種,當在頁面沒有找到定位的元素拋出異常,那麼加個等待,還有問題就換個等待方式數據庫

  • 強制等待 time.sleep(10)
  • 顯式等待 driver.implicitly_wait(10)
  • 隱式等待 WebDriverWait(driver, 10).until(EC.presence_of_element_located(locator))

2.網頁的加載順序:app

  • 元素或控件(a標籤 input) 
  • 標籤中的數據
  • 文件、圖片 

因此有時使用wait.until(EC.presence_of_element_located((By.ID, 'kw'))).click()會提示未定位到元素,是由於元素的出現不意味着元素可點擊,所以將presence_of_element_located換成visibility_of_element_located框架

3.找元素出現問題,沒有找到或超時:測試

  • 沒有加等待
  • 等待時間不夠
  • 定位表達式有問題
  • 顯示等待的條件不對

 4.前置條件的知足(不是每一步都要經過web自動化測試實現):接口

  • 自動化腳本
  • 接口
  • 修改數據庫
  • 手動充值

5.basepage還有哪些方法須要封裝?圖片

原則:不以你測試的頁面改變,不管哪一個頁面均可以用到ci

6.web分層:element

  • PO,將頁面邏輯和測試邏輯分離
  • 元素定位層 locator,單獨成類,也能夠寫到類屬性中(建議)
  • 數據層==>數據分組==>rf,關鍵字驅動
  • 用例層
  • basepage==>決定了框架的好壞,通用邏輯
  • webelement 元素層(app自動化測試學)

 7.前置條件的知足(均可以,不是每一步都要經過web自動化測試實現):input

  • 自動化腳本
  • 接口
  • 修改數據庫
  • 手動充值   
相關文章
相關標籤/搜索