session>module>class>function
session:所有测试.py文件执行前执行一次
module:每一个测试.py文件执行前都会执行一次
class:每一个测试文件中的测试类执行前都会执行一次
function:所有文件的测试用例执行前都会执行一次
scope=session时要放在conftest.py下
示例
@pytest.fixture(scope='class', autouse=False)
def desired():
print('这是fixture方法')
autouse用法
@pytest.fixture(scope='function', autouse=True)
autouse=true时不用在每个方法中调用fixture,会自动在每个方法执行前调用
yieid用法
@pytest.fixture(scope='class', autouse=False)
def desired():
driver = webdriver()
yieid driver # yieid之后会在类执行完再执行,相当于teardown_class
print('关闭')
driver.close()
pytest.main(['-vs', '-m=smoke or retest', '--reruns=2'])
pytest.main(['-s', '../test_case/', '--alluredir', '../Report/temp'])
os.system('allure generate ../Report/temp -o ../Report/allure_report --clean')
pycharm的terminal下执行用例
pytest -s test_case/test_homelink.py --alluredir=Report/temp
生成测试报告
allure generate Report/temp -o Report/allure_report --clean
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。