【发布时间】:2018-10-03 09:11:43
【问题描述】:
我在 conftest.py 文件中有如下代码
@pytest.fixture(scope="session", autouse=True)
def app(request):
global fixture
browser = request.config.getoption("--browser")
base_url=target['baseUrl'])
fixture = Application(browser=browser,base_url=web_config['baseUrl'])
print("\n BEFORE SESSION")
fixture.session.login()
return fixture
@pytest.fixture(scope="session", autouse=True)
def stop(request):
def fin():
print("\n AFTER SESSION")
fixture.session.ensure_logout()
fixture.destroy()
request.addfinalizer(fin)
return fixture
测试文件如下所示。即夹具,我明明不叫。
import pytest
@pytest.yield_fixture()
def setup_method():
print("\n BEFORE METHOD")
yield
print("\n AFTER METHOD")
@pytest.mark.usefixtures("setup_method")
def test_add_text_element(app):
print("\n RUN TEST")
app.element.add_blank_page()
app.element.add_element(element_name='Header')
但是如果我需要设置一些其他类设置怎么办?如果我得到另一个夹具,我如何在测试文件中使用它,而不是现在使用的那个?
【问题讨论】:
标签: python selenium-webdriver automated-tests pytest