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