selenium+python自动化测试--封装浏览器引擎
前言:之前公司只需兼容chrome浏览器,所以就在每个py文件中将启动chrome浏览器写死了。突然有一天,领导说让测一下其他浏览器(比如Firefox、ie等)的兼容性。页面兼容性可以用我在web测试中提到的工具测试,但是功能测试我难道要每个浏览器都试一遍吗?答案当然是NO!!于是就想到了将浏览器引擎封装起来~
之前页面中的写法:
from selenium import webdriver class Test(): @classmethod def setUpClass(cls): driver = webdriver.Chrome() driver.maximize_window()
优化后:
封装浏览器引擎
文件名称:browserEngine.py
from selenium import webdriver class BrowserEngine(object): def __init__(self, driver): self.driver = driver browser_type = "Firefox" def get_browser(self): if self.browser_type == 'Firefox': driver = webdriver.Firefox() elif self.browser_type == 'Chrome': driver = webdriver.Chrome() elif self.browser_type == 'IE': driver = webdriver.Ie() else: driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(10) return driver
在测试页调用
from common.browserEngine import BrowserEngine class Test(): @classmethod def setUpClass(cls): # 加载浏览器引擎 browser = BrowserEngine(cls) driver = browser.get_browser()
以上就是所有代码了,如要更换浏览器,每次只需修改 browserEngine.py文件中的 browser_type 值就可以了~