WebDriver API 之常見操作
瀏覽器

操作:
最大化:maximize_window()
最小化:minimize_windows()
set_window_size(width, heigth)
前進/后退:forward( ) back( )
關閉當前窗口/瀏覽器:close() quit()
獲取頁面標題和當前頁面url:
獲取頁面標題:title
獲取頁面url:current_url
頁面刷新:refresh()
元素操作:
clear():清除元素內容。
send_keys():向元素輸入內容。
click():單擊元素。
size:返回元素尺寸。
text:返回元素文本。
get_attribute(obj):返回元素某個屬性的值。
location:元素的坐標。
page_source:獲取網頁源碼。
鼠標事件:
context_click(),右擊。
double_click(),左鍵雙擊。
drag_and_drop,拖動。
drag_and_drop_by_offset(),拖動到指定位置。
move_to_element(),懸停。
click_and_hold(),單擊并按住不放。
下拉框:
通過value值選擇:select_by_value('value');
通過文本選擇:select_by_visible_text('text');
通過索引選擇:select_by_index(index),索引從0開始。
瀏覽器多窗口處理:
每一個瀏覽器窗口都有一個唯一的標識符,句柄,通過句柄來判斷當前處于哪一個瀏覽器窗口,webdriver中提供了相應方法來進行瀏覽器窗口的切換。
window_handles,獲取所有瀏覽器窗口的句柄。
current_window_handle,獲取當前瀏覽器窗口句柄。
switch_to.window('handle'),切換到指定瀏覽器窗口。
close(),關閉當前瀏覽器窗口。
頁面多表單(多框架處理):
switch_to.frame(),切換到指定表單。
switch_to.default_content(),切換到最外層表單。
switch_to.parent_frame(),切換到上一級表單。
層級定位:先定位A元素,然后定位A下的元素。
警告框處理:
定位警告框:switch_to.altert();
accept,接受,相當于點擊【確定】
dismiss,解散,相當于點擊【取消】
定位一組對象:定位到元素后進行批量操作。
find_elements_by_xxxx(),返回一個列表。
文件上傳:
使用input標簽實現的上傳:調用send_keys()方法將需要上傳的文件路徑發送到指定元素即可。
非input標簽實現的上傳:借助AutoIt,使用 SendKeys第三方庫 ,使用win32 GUI等工具實現上傳。
截圖:
一般在執行用例時,如果用例失敗,則將當前窗口截圖保存。
方法:get_screenshot_as_file('imgname')
驗證碼:
屏蔽驗證碼功能。
將驗證碼固定。
Python-tesserct模塊識別驗證碼。
鍵盤事件:
方法:send_keys(cmd)向指定元素發送鍵盤指令。
Keys.BACK_SPACE,刪除。
Keys.SPACE,空格。
Keys.TAB,橫向制表符。
Keys.ENTER,回車。
Keys.CONTRAL,'a',全選。
Keys.CONTRAL,'c',復制。
Keys.CONTRAL,'x',剪切。
Keys.CONTRAL,'v',粘貼。
Keys.END,翻到頁面底部。
Keys.HOME,翻到頁面頂部。
Keys.PAGE_UP,向上翻頁。
Key.PAGE-DOWN,向下翻頁。
多瀏覽器處理,以及執行JS腳本的方法,后續更新
以上就是我們在做
web
自動化時經常使用的一下WebDriber APT。
API
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。