conftest文件设置全局driver

import pytest
from selenium import webdriver


# 全局设置driver方法1
driver = None


@pytest.fixture(scope='session')  # 以实现多个.py跨文件使用一个session来完成多个用例
def browser():
    global driver
    '''定义全局driver参数'''
    if driver is None:
        driver = webdriver.Chrome()
        driver.maximize_window()

    driver.get("http://xxxx.com/")
    driver.implicitly_wait(10)
    print("正在启动浏览器:Chrome")

    yield driver
    driver.close()
    return driver

# 全局设置driver方法2
def pytest_addoption(parser):
    '''
    添加命令行参数 --browser
    '''

    parser.addoption(
        "--browser", action="store", default="firefox", help="browser option: chrome"
    )


@pytest.fixture(scope='session')  # 以实现多个.py跨文件使用一个session来完成多个用例
def driver(request):
    '''定义全局driver参数'''
    name = request.config.getoption("--browser")
    if name == "chrome":
        driver = webdriver.Chrome()
        driver.maximize_window()
    elif name == "firefox":
        driver = webdriver.Firefox()
        driver.maximize_window()

    driver.get("http://xxxx.cn/")
    driver.implicitly_wait(10)
    print("正在启动浏览器: %s" % name)

    return driver

 




posted @ 2021-02-08 17:57  海浪。  阅读(1293)  评论(0)    收藏  举报