自動化測試:selenium定位方法和瀏覽器常用操作方法,unittest常用斷言方法

常用元素定位方法:

1、id定位: find_element_by_id()

2、name定位: find_element_by_name()

3、class定位:find_element_by_class_name()

4、link定位:find_element_by_link_text()

5、partial_link定位:find_element_by_partial_link_text()

6、xpath定位:find_element_by_xpath()

7、CSS定位:find_element_by_css_selector()

操作方法:

clear 清除元素的內(nèi)容

send_keys 模擬按鍵輸入

click 點擊元素

submit 提交表單

size 獲取元素的尺寸

text 獲取元素的文本

get_attribute(name) 獲取屬性值

location 獲取元素坐標(biāo),先找到要獲取的元素,再調(diào)用該方法

page_source 返回頁面源碼

driver.title 返回頁面標(biāo)題

current_url 獲取當(dāng)前頁面的URL

is_displayed() 設(shè)置該元素是否可見

is_enabled() 判斷元素是否被使用

is_selected() 判斷元素是否被選中

tag_name 返回元素的tagName

context_click(elem) 右擊鼠標(biāo)點擊元素elem,另存為等行為

double_click(elem) 雙擊鼠標(biāo)點擊元素elem,地圖web可實現(xiàn)放大功能

drag_and_drop(source,target) 拖動鼠標(biāo),源元素按下左鍵移動至目標(biāo)元素釋放

move_to_element(elem) 鼠標(biāo)移動到一個元素上

click_and_hold(elem) 按下鼠標(biāo)左鍵在一個元素上

perform() 在通過調(diào)用該函數(shù)執(zhí)行ActionChains中存儲行為

send_keys(Keys.ENTER) 按下回車鍵

send_keys(Keys.TAB) 按下Tab制表鍵

send_keys(Keys.SPACE) 按下空格鍵space

send_keys(Kyes.ESCAPE) 按下回退鍵Esc

send_keys(Keys.BACK_SPACE) 按下刪除鍵BackSpace

send_keys(Keys.SHIFT) 按下shift鍵

send_keys(Keys.CONTROL) 按下Ctrl鍵

send_keys(Keys.ARROW_DOWN) 按下鼠標(biāo)光標(biāo)向下按鍵

send_keys(Keys.CONTROL,‘a(chǎn)’) 組合鍵全選Ctrl+A

send_keys(Keys.CONTROL,‘c’) 組合鍵復(fù)制Ctrl+C

send_keys(Keys.CONTROL,‘x’) 組合鍵剪切Ctrl+X

send_keys(Keys.CONTROL,‘v’) 組合鍵粘貼Ctrl+V

unittest常用斷言方法:

assertLocation(判斷當(dāng)前是在正確的頁面)、

assertTitle(檢查當(dāng)前頁面的 title 是否正確)、

assertValue(檢查 input 的值, checkbox 或 radio,有值為”on”無為”off”)、

? assertSelected(檢查 select 的下拉菜單中選中是否正確)、

? assertSelectedOptions(檢查下拉菜單中的選項的是否正確)、

? assertText(檢查指定元素的文本)、

? assertTextPresent(檢查在當(dāng)前給用戶顯示的頁面上是否有出現(xiàn)指定的文本)、

? assertTextNotPresent(檢查在當(dāng)前給用戶顯示的頁面上是否沒有出現(xiàn)指定的文本)、

? assertAttribute(檢查當(dāng)前指定元素的屬性的值)、

? assertTable(檢查 table 里的某個 cell 中的值)、

? assertEditable(檢查指定的 input 是否可以編輯)、

? assertNotEditable(檢查指定的 input 是否不可以編輯)、

? assertAlert(檢查是否有產(chǎn)生帶指定 message 的 alert 對話框)、

? verifyTitle驗證預(yù)期的頁面標(biāo)題。

? ?verifyTextPresent驗證預(yù)期的文本是否在頁面上的某個位置。

? verifyElementPresent驗證預(yù)期的 UI 元素,它的 HTML 標(biāo)簽的定義,是否在當(dāng)前網(wǎng)頁上。

? verifyText核實預(yù)期的文本和相應(yīng)的 HTML 標(biāo)簽是否都存在于頁面上。

? verifyTable驗證表的預(yù)期內(nèi)容。

? waitForPageToLoad 暫停執(zhí)行,直到預(yù)期的新的頁面加載


---------------------

版權(quán)聲明:本文為CSDN博主「a836586387」的原創(chuàng)文章,遵循CC 4.0 by-sa版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/a836586387/article/details/88899936

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容