zoukankan      html  css  js  c++  java
  • Python+Selenium进阶版(四)-封装一个自己的类-浏览器引擎类

      目标:如何去封装几个简单的Selenium方法到我们自定义的类,这次我们编写一个类,叫浏览器引擎类,通过更改一个字符串的值,利用if语句去判断和控制启动那个浏览器。

      暂时支持三大引擎:IE,Chrome,Firefox

      练习场景:在test1这个包下新建一个browser_engine.py文件,然后在另外一个包下新建一个test.py文件去测试这个浏览器引擎类是否工作正常。这个浏览器引擎类,我们一开始写简单一点,只写启动浏览器。

      browser_engine.py代码:

    # coding=utf-8
    from selenium import webdriver
    
    class BrowserEngine(object):
        """
        定义一个浏览器引擎类,根据browser_type的值去控制启动不同的浏览器。
        这里主要是IE,Firefox,Chrome
    
        """
        def __init__(self,browser_type):
            """
            传入浏览器类型
            :param browser_type:
            """
            self.browser_type = browser_type
    
    
        def get_browser(self):
            """
            通过if语句,来控制初始化不同浏览器的启动,默认是Chrome
            :return:
            """
            if self.browser_type == 'Firefox':
                driver = webdriver.Firefox()
            elif self.browser_type == 'IE':
                driver = webdriver.Ie()
            else:
                driver = webdriver.Chrome()
    
            driver.maximize_window()
            driver.implicitly_wait(10)
    
            return driver
    

      

      test.py代码:在open_browser方法中传入一个引擎类型的值,然后调用类选择哪个浏览器。

    # coding = utf-8
    from selenium import webdriver
    import time
    from test1.browser_engine import BrowserEngine
    
    # 构造测试类
    class TestBrowserEngine(object):
        # 打开浏览器
        def open_browser(self,browser_type): # 传入浏览器类型参数
            browserengine = BrowserEngine(browser_type)
            self.driver = browserengine.get_browser()
    
    tb_driver=TestBrowserEngine()
    tb_driver.open_browser("Chrome")
    

      

    参考文章:https://blog.csdn.net/u011541946/article/details/70171401

  • 相关阅读:
    MVC3 中上传大文件
    js 将十进制转换为八位二进制数组
    nodejs 读取并处理二进制文件
    freeswitch源码编译 ./configure 遇到的问题
    通道设置静态坐席
    呼叫中心静态座席的配置
    ECharts报表
    combotree
    openlayer PanZoom
    为什么要始终使用PreparedStatement代替Statement?
  • 原文地址:https://www.cnblogs.com/zhaocbbb/p/12658939.html
Copyright © 2011-2022 走看看