我們在實際自動化測試過程中,肯定會遇到當前頁面顯示不到我們定位的元素。這就需要下拉滾動條才能顯示出我們的元素;
而滾動條的按鈕又是我們定位不到的,所以需要使用js指令碼來完成;
1.先來說我們的下拉滾動條的操作:
#通過js指令碼進行設計;通過座標點進行絕對移動
#座標原點(0,0)
get_driver.maximize_window() #
最大化視窗
time.sleep(3)
get_js="
window.scrollto(0,500);"#
編寫js指令碼,將滾動條滾動到500位置,如果存在多個js指令碼則只會執行最後乙個。
get_driver.execute_script(get_js) #
執行js指令碼
2.如果想要多次下拉滾動條:
get_driver.maximize_window() #最大化視窗
time.sleep(3)
get_js="
window.scrollto(0,200);"#
編寫js指令碼,將滾動條滾動到300位置
get_js1="
window.scrollby(0,300);"#
執行多個js指令碼則需要用到scrollby;表示再次下拉到300位置
get_driver.execute_script(get_js) #
執行js指令碼
get_driver.execute_script(get_js1) #
執行js指令碼
3.將想要定位的元素直接顯示到可見視窗:
#通過定位元素進行將所需的元素顯示在當前視窗中:
get_element=get_driver.find_element_by_xpath("
//*[@id='page']/a[10]
") # 定位到元素
get_js="
arguments[0].scrollintoview();
" # js指令碼
get_driver.execute_script(get_js,get_element)
Selenium 瀏覽器滾動條操作
在用selenium做web自動化時,經常會碰到要定位的元素不在當前屏,需要拖動瀏覽器的滾動條才能顯示出來。如果直接去定位的話,一定會報元素不存在的錯誤。那麼怎麼對瀏覽器的滾動條進行操作呢?webdriver不能定位到瀏覽器的滾動條,只有通過execute script 來執行js指令碼,達到操作滾...
selenium瀏覽器操作
在元素定位中xpath使用的還算比較多,介紹一下常見的firfox和chrome瀏覽器外掛程式安裝 一 瀏覽器定位工具安裝 1 firfox firfox比較簡單,主要瀏覽器自帶的定位功能也比較強大國內也比較好的支援外掛程式安裝 1 安裝 我這裡已經安裝好了所以可以在 我的附加元件 裡面檢視,如果沒...
Selenium成長之路 22瀏覽器滾動條處理
在實際專案中,會經常出現元素不在當前螢幕,需要滑動滾動條,才能顯示想要的元素。這樣,如何通過定位滾動條,來定位到想要的元素呢,webdriver不能直接定位到瀏覽器滾動條,只能通過execute script 來執行js指令碼,達到滾動條的目的 我們今天運用window.scrollto 的方法來定...