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