我们在做UI自动化测试过程中经常要使用对浏览器控制的操作,那么一般包含哪些呢?
1、get方法打开浏览器
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
复制代码
2、浏览器后退back
比如我们打开浏览器后,打开某个帖子,又有回退到上一个界面,那么我们就需要用到back方法
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
- time.sleep(1)
- driver.find_element_by_xpath("//div[@class='bm_h cl'][1]/h2/a").click()
- driver.back()
复制代码
3、浏览器前进forwad
当我们浏览器回退到上一个界面后,我们又要前进到之前的界面,那么我们就会用到forward方法
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
- time.sleep(1)
- driver.find_element_by_xpath("//div[@class='bm_h cl'][1]/h2/a").click()
- driver.back()
- driver.forward()
复制代码
4、浏览器刷新refresh
如果我们想要刷新某个页面,那么我们就可以直接使用refresh方法刷新页面
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
- time.sleep(1)
- driver.refresh()
复制代码
5、浏览器刷新退出quit
当我们跑完某条自动化测试case后,想要退出浏览器,关闭浏览器那么我们就可以使用quit方法
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
- time.sleep(1)
- driver.quit()
复制代码
6、设置浏览器分辨率
当我们想要在固定的宽和高下做测试时,那么我们就得去设置浏览器的分辨率,方法如下:
- def set_window_size(self, width, height, windowHandle='current'):
- """
- Sets the width and height of the current window. (window.resizeTo)
- :Args:
- - width: the width in pixels to set the window to
- - height: the height in pixels to set the window to
- :Usage:
- driver.set_window_size(800,600)
- """
复制代码
通过源码可以看出来直接传入宽和高的值就好了,那么自动化代码如下:
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
- time.sleep(1)
- driver.set_window_size(500,1000)
复制代码
7、浏览器最大化
正常情况下我们做自动化测试为了确保页面中的控件可以完全展开,所以我们需要将浏览器最大化,那么最大化其实就是把窗口最大化了,实现起来非常简单,如下:
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('http://www.bcbxhome.com')
- time.sleep(1)
- driver.maximize_window()