打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
selenium+python自动化91-多线程启动多个不同浏览器

一、前言

    如果想用多个浏览器跑同一套测试代码,driver=webdriver.Firefox()这里的driver就不能写死了,可以把浏览器名称参数化。

    后续如果想实现多线程同时启动浏览器执行用例,用前面讲的tomorrow模块,设置下线程数套用下就可以了

二、启动浏览器

1.为了实现多个浏览器的灵活切换,可以把启动浏览器写一个函数,参数用浏览器名称就行了

```

def startBrowser(name):

    """

    打开浏览器函数,name参数:"firefox"、"chrome"、"ie"、"phantomjs"

    """

    try:

        if name == "firefox" or name == "Firefox" or name == "ff":

            print("start browser name :Firefox")

            driver = webdriver.Firefox()

            return driver

        elif name == "chrome" or name == "Chrome":

            print("start browser name :Chrome")

            driver = webdriver.Chrome()

            return driver

        elif name == "ie" or name == "Ie":

            print("start browser name :Ie")

            driver = webdriver.Ie()

            return driver

        elif name == "phantomjs" or name == "Phantomjs":

            print("start browser name :phantomjs")

            driver = webdriver.PhantomJS()

            return driver

        else:

            print("Not found this browser,You can use 'firefox', 'chrome', 'ie' or 'phantomjs'")

    except Exception as msg:

        print("启动浏览器出现异常:%s" % str(msg))

```

三、 多线程启动不同浏览器

1.代码参考:

```

# coding:utf-8

from selenium import webdriver

import time

from tomorrow import threads

def startBrowser(name):

    """

    打开浏览器函数,"firefox"、"chrome"、"ie"、"phantomjs"

    """

    try:

        if name == "firefox" or name == "Firefox" or name == "ff":

            print("start browser name :Firefox")

            driver = webdriver.Firefox()

            return driver

        elif name == "chrome" or name == "Chrome":

            print("start browser name :Chrome")

            driver = webdriver.Chrome()

            return driver

        elif name == "ie" or name == "Ie":

            print("start browser name :Ie")

            driver = webdriver.Ie()

            return driver

        elif name == "phantomjs" or name == "Phantomjs":

            print("start browser name :phantomjs")

            driver = webdriver.PhantomJS()

            return driver

        else:

            print("Not found this browser,You can use 'firefox', 'chrome', 'ie' or 'phantomjs'")

    except Exception as msg:

        print("启动浏览器出现异常:%s" % str(msg))

@threads(5)

def run_case(name):

    driver = startBrowser(name)

    driver.get("https://www.cnblogs.com/yoyoketang/")

    time.sleep(3)

    print(driver.title)

    driver.quit()

if __name__ == "__main__":

    names = ["chrome", "ff", "ie"]

    for i in names:

        run_case(i)

```

2.运行结果:

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
JavaScript(Node
JavaScript自动化测试
python selenium浏览器调用(chrome、ie、firefox)
在Python Selenium中为Chrome和Firefox浏览器开启headless模式 | 李辉的个人网站
Python Selenium - SSL站点处理
Python Selenium中级篇之4
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服