QA|conftest使用了fixture但是没生效的原因|Pytest
阅读原文时间:2023年09月05日阅读:1

conftest.py中使用了fixture但是没生效,后面发现是因为autouse默认False导致,修改后代码如下

# conftest.py
@pytest.fixture(scope='session', autouse=True)
def cal_fixture():
"""
开始测试前的准备:打开浏览器
结束测试后的收尾:关闭浏览器
"""
print('----------------------开始测试----------------------')
calpage_obj = CalElement()
yield
print('----------------------结束测试----------------------')
calpage_obj.driver.close()

  • 参数列表

    • scope:可以理解成fixture的作用域,默认:function,还有class、module、package、session四个【常用】
    • name:默认:装饰器的名称,同一模块的fixture相互调用建议写个不同的name。
    • autouse 默认:False,需要用例手动调用该fixture;手动调用方式为:用例调用时,参数写上函数名称就行;如果是True,所有作用域内的测试用例都会自动调用

参考:Pytest系列(4) - fixture的详细使用 - BigCity - 博客园 (cnblogs.com)

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章