我想使用pytest pytest_runtest_setup
函数设置selemium浏览器和pytest_runtest_teardown
来释放它,并在conftest.py中编写此代码。
问题是如何将selenium browser var传递给我的测试。 pytest_runtest_call
函数有item参数,实际上我用预定义的参数联系我的测试函数(如果我打印这个项目,我会得到以下内容:<Function 'test_regression[4]'>
)
那么,也许可以更改测试参数以在那里注入浏览器?
答案 0 :(得分:0)
您不希望使用pytest_runtest_setup()
和pytest_runtest_teardown()
挂钩。相反,你应该使用fixture来管理selenium浏览器:
@pytest.fixture
def browser(request):
browser = selenium.webdriver.Firefox()
request.addfinalizer(browser.quit)
return browser
def test_something(browser):
browser.get('http://...')
# etc