• 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 值就可以了~

  • 相关阅读:
    彻底理解c++的隐式类型转换
    golang1.16新特性速览
    配置CLion管理Qt项目国际化支持
    一道有趣的golang排错题
    计算机视觉 / 二维空间中,如何判断点在不在某个封闭图形内?
    如何使用google搜索?
    shuffle实现 / 洗牌算法
    Linux 命令行界面下,好玩的东西
    LAB5 Shell、外存管理与操作
    LAB6 网络通信 、 网卡驱动
  • 原文地址:https://www.cnblogs.com/yudx/p/11864786.html
Copyright © 2020-2023  润新知