Selenium控制瀏覽器常見操作示例
本文實例講述了Selenium控制瀏覽器常見操作。分享給大家供大家參考,具體如下:
Selenium是一個用于Web應用程序測試的工具。Selenium測試直接運行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。這個工具的主要功能包括:測試與瀏覽器的兼容性——測試你的應用程序看是否能夠很好得工作在不同瀏覽器和操作系統(tǒng)之上。測試系統(tǒng)功能——創(chuàng)建回歸測試檢驗軟件功能和用戶需求。支持自動錄制動作和自動生成 .Net、Java、Perl等不同語言的測試腳本。
有時候我們希望能讓瀏覽器以某種尺寸打開,讓訪問頁面在這種尺寸下運行,或者控制瀏覽器進行后退與前進操作等等
控制瀏覽器窗口大小
有時我們需要對移動站點的樣式進行評估,可是瀏覽器的正常尺寸很顯然是不合適的, 此時我們會想將瀏覽器設置成移動端大小就可以了。WebDriver提供了set_window_size()方法來設置瀏覽器大?。?/p>
from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
driver.set_window_size(480,800)
除了set_window_size方法來設置瀏覽器的大小,WebDriver還提供了一個設置瀏覽器全屏顯示的方法maximize_window(),其用法與set_window_size()相同,不同的是maximize_window()無需傳遞參數:
from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
driver.maximize_window()
值得注意的是,在定位元素的時候,有些網頁如果不是全屏展示時,將由可能定位不準?。?!
控制瀏覽器前進與后退
在使用瀏覽器瀏覽網頁時,瀏覽器提供了前進和后退的按鈕,可以方便的在瀏覽過的網頁之間進行切換,WebDriver也提供了相應的back()和forward()方法來模擬后退和前進按鈕,下面舉個簡單的栗子來演示這兩個方法的使用:
from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com')
driver.get('https://blog.csdn.net/y472360651')
# 后退至百度頁面
driver.back()
# 前進至博客頁面
driver.forward()
刷新頁面
有時候需要手動刷新(F5)頁面,WebDriver也提供了相應的方法refresh(),使用起來很簡單,如下:
driver.refresh()
窗口截屏
自動化用例是由程序去執(zhí)行的,因此有些時候打印的錯誤信息并不十分明確。如果在腳本執(zhí)行出錯的時候能夠對當前窗口截圖保存,那么通過圖片就可以非常直觀的看出出錯的原因。WebDriver提供了截圖函數get_screenshot_as_file()來截取當前窗口:
from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get("https://www.baidu.com/")
driver.get_screenshot_as_file("abc.png")
值得注意的是,當使用窗口截屏功能時,圖片的擴展名必須是png!!!
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python Socket編程技巧總結》、《Python URL操作技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》
希望本文所述對大家Python程序設計有所幫助。
相關文章
python 如何用urllib與服務端交互(發(fā)送和接收數據)
這篇文章主要介紹了python 如何用urllib與服務端交互(發(fā)送和接收數據),幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下2021-03-03
python3模擬實現xshell遠程執(zhí)行l(wèi)inux命令的方法
今天小編就為大家分享一篇python3模擬實現xshell遠程執(zhí)行l(wèi)inux命令的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07

