Selenium + Python自动化测试系列三——控制浏览器操作

释放双眼,带上耳机,听听看~!

控制浏览器操作

控制浏览器窗口大小

在测试过程中,我们在打开浏览器后,根据需求可自定义调整浏览器的尺寸大小。WebDriver提供了set_window_size()方法来设置浏览器的大小。

如果页面没有最大化,可以调用driver.maximize_window()将浏览器最大化,相当于点击了页面右上角的最大化按钮,maximize_window()方法不需要参数。

值得注意的是,在定位元素的时候,有些网页如果不是全屏展示时,将有可能定位不准!!!

下面举例源码如下:

from selenium.webdriver import Chrome
import time
driver = Chrome(\"C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe\")
driver.get(\'https://www.baidu.com\')
#根据需求调整浏览器的尺寸,调整窗口大小尺寸为(800 * 720)。
driver.set_window_size(480,800)
#调整浏览器窗口最大化
driver.maximize_window()
time.sleep(5)
driver.quit()

控制浏览器前进、后退

在当前页面打开一个新的链接后,如果想回退到前一个页面,使用如下driver.back(),相当于点击了浏览器的后退按钮

和back操作对应的是浏览器前进操作driver.forward(),相当于点击了浏览器的前进按钮。

driver.back() //回到上一个页面

driver.forward() //切换到下一个页面

下面举例源码如下:

from selenium.webdriver import Chrome
import time
driver = Chrome(\"C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe\")
first_url = \'https://www.baidu.com\'
driver.get(first_url)
time.sleep(5)
second_url = \'https://news.baidu.com\'
driver.get(second_url)
time.sleep(5)
#返回(后退)到百度首页
driver.back()
time.sleep(5)
#前进到新闻页
driver.forward()
time.sleep(5)
driver.quit()

刷新页面

有时页面过期后,网页上显示的信息可能不是最新的,需要对页面进行刷新,使用refresh()方法刷新页面,相当于点击浏览器的刷新按钮。

driver.refresh() #刷新当前页面

屏幕截图

自动化用例是由程序去执行的,因此有些时候打印的错误信息并不十分明确。

如果在脚本执行出错的时候能够对当前窗口截图保存,那么通过图片就可以非常直观的看出出错的原因。

webdriver提供了截图函数get_screenshot_as_file()来截取当前窗口:

from selenium.webdriver import Chrome
import time
driver = Chrome(\"C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe\")
driver.get(\'https://www.baidu.com\')
#截图并保存至D盘根目录下图片名命名为test.png
driver.get_screenshot_as_file(\"D:/test.png\")
time.sleep(5)
driver.quit()

   这里列举了几个常用的控制浏览器操作,其他浏览器操作可另行参考网上其他资料。

 

 

 

人已赞赏
随笔日记

多媒体开发(9):声音采集的概念 | 振幅 | 频率 | 共振 | 电平化

2020-11-9 4:00:56

随笔日记

试用aws免费服务并搭建ss

2020-11-9 4:00:58

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索