Pytest fixture之autouse使用
写自动化用例会写一些前置的fixture操作,用例需要用到就直接传该函数的参数名称就行了。当用例很多的时候,每次都传这个参数,会比较麻烦。fixture里面有个参数autouse,默认是Fasle没开启的,可以设置为True开启自动使用fixture功能,这样用例就不用每次都去传参了。
调用fixture三种方法
- 函数或类里面方法直接传fixture的函数参数名称
- 使用装饰器@pytest.mark.usefixtures()修饰
- autouse=True自动使用
使用fixture传参
先定义start功能,用例全部传start参数,调用该功能
import pytest
@pytest.fixture(scope="function")
def start(request):
print('\n-----开始执行function----')
def test_a(start):
print("-------用例a执行-------")
class Test_aaa():
def test_01(self, start):
print('-----------用例01--------------')
def test_02(self, start):
print('-----------用例02------------')
if __name__ == "__main__":
pytest.main(["-vs", "test_demo.py"])
============================= test session starts =============================
collecting ... collected 3 items
test_demo.py::test_a
-----开始执行function----
PASSED [ 33%]-------用例a执行-------
test_demo.py::Test_aaa::test_01
-----开始执行function----
PASSED [ 66%]-----------用例01--------------
test_demo.py::Test_aaa::test_02
-----开始执行function----
PASSED [100%]-----------用例02------------
============================== 3 passed in 0.03s ==============================
Process finished with exit code 0
使用usefixtures传参
使用装饰器@pytest.mark.usefixtures()修饰需要运行的用例
END配套学习资源分享
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
软件测试面试小程序
被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!
涵盖以下这些面试题板块:
1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux
6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础
全套资料获取方式 :