ui自動化測試,頁面方法的使用


 

 

 

 

懸浮下拉框

的設置選擇

 

 

 

 下拉框的選擇

 

 

顯性等待

在UI的自動化測試中,經常會由於網絡加載慢的問題導致資源加載不出來,從而影響測試的效率,之前我們對這樣的處理方案是使用了time庫里面的sleep()方法來休眠幾秒鍾,但是這樣的方式畢竟不是很好的解決方案。在UI自動化測試中,關於等待的部分,主要匯總為如下三點,具體如下:

1、固定等待,也就是使用sleep()方法

2、隱式等待,使用到的方法是implicitly_wait的方法,可以把它理解為設置最長等待時間

3、顯式等待,主要指的是程序每隔一段時間執行自定義的程序判斷條件,如果判斷成立,程序就會繼續執行,那么如果判斷失敗,就會報TimeOutExpection的異常信息

 

 

 

 

 

 雙擊,

double_click一般主要應用於數據的交互方面,比如添加用戶姓名的按鈕,假設程序規定用戶名稱是唯一的,那么雙擊后是否插入了兩條用戶名稱一樣的信息了,這就需要來驗證,提交數據后,然后在數據列表中使用用戶名稱來查詢,查看是否存在兩條數據,一般而言,前后端的程序員都是會處理這些的,但是作為測試我們還是需要驗證這些測試場景。

ActionChains類的方法
行動鏈

 

 

 

 

提示框

 

 

 

 

雙擊,右擊

 

 雙擊用到行動連,提示框用到Alert的類

 

 

右擊用到的也是行動連

 

 

UI自動化測試

#handle手柄,current當前,frame框架

# 下載安裝好瀏覽器驅動
from selenium import webdriver         #導入瀏覽器驅動
import time as t
driver=webdriver.Chrome()
#獲取當前測試地址  current-url
獲取當前頁面資源(源代碼)',driver.page_source
assert driver.current_url.endswith('hao123.com/')==True         #斷言當前網址是以(‘hao123’)結尾為真。
# print(driver.title)                                           #打印網址標題
assert driver.title=='百度一下,你就知道'                         #斷言網址標題正確
driver.find_element_by_link_text('企業郵箱').click()   超鏈接直接點進去
 driver.switch_to.frame('login_frame')      #移動到框架里,這里是默認根據id移動的
driver.refresh()      #刷新

基礎關鍵字

assert 斷言

current-url #獲取當前測試地址

.page_source #當前頁面資源(源代碼)

assert driver.current_url.endswith()==True 斷言當前網址是以()結尾。

driver.title 網址標題

link_text 超鏈接

switch_to.frame 移動到框架

refresh() #刷新

driver.window_handles 所有窗口

driver.current_window_handle 當前窗口

attribute 屬性

網頁切換時,如果不知道下一個頁面的名字,就得用for x in 循環 。current只能切換到當前頁面,沒辦法切換到下一頁面

driver.back() 后退

driver.forword ()前進

so.clear清空(so是給定位的文本框輸入信息)

webdriverl瀏覽器屬性的方法應用

get_attribute():獲取元素屬性的值

獲取當前頁面的資源 page_source

driver.name獲取執行的瀏覽器名字

is_displayed()是否可見

is_enabled():是否可編輯

is_selected()針對單選按鈕是否勾選

action_chains行動鏈

Selectl類的方法,選擇框

首先是導入方法類么

Alert類的方法,提示框

from selenium.webdriver.common.alert import Alert

在Alert的類里面,涉及到的方法以及方法的作用主要匯總為如下:

  • text:獲取彈出框的文本信息

  • accept是接受Confirm彈出框

  • dismiss是拒絕接受Confirm彈出框

  • send_keys是在Prompt消息對話框里面輸入想要輸入的內容

    ActionChains類的方法,鼠標

from selenium.webdriver.common.action_chains import ActionChains
nb.context_click(xingneng).perform()

context_click 右擊

obj.double_click(so).perform()

double_click 雙擊

context上下文 implicitly_wait

含蓄地等待

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM