当前位置:   article > 正文

Pytest前置函数的使用(脱坑向)_pytest前置中怎么调用async函数

pytest前置中怎么调用async函数

使用前置函数有两种方式
1、@pytest.mark.usefixtures()
2、作为函数的入参传入

使用@pytest.mark.usefixtures()时,可将该装饰器放在类前或用例前,但是不能获取返回值,所以一般是用在打开浏览器操作或者初始化的一些工作,@pytest.mark.usefixtures()传入要使用的前置函数名,并且可传入多个前置函数,例如@pytest.mark.usefixtures(“login”,“open”),按顺序执行前置函数

作为函数的入参传入时,执行前置函数的同时也可获取前置函数的返回值,并且也可以传入多个前置函数,但是要注意,如果前置步骤作用域是class,在用例中,不管多少用例调用了前置函数,该前置函数都将只执行一次,但每个用例都能获取到返回值(@pytest.mark.usefixtures同理)

如果前置函数中加了autouse=True时,不管用例是否调用该前置函数,该前置函数都会自动执行(遵循作用域),如下

conftest.py

@pytest.fixture(autouse=True,scope='function')
def start():
    print('a=1')
    a=1
    yield a
  • 1
  • 2
  • 3
  • 4
  • 5

用例

class Test_01:

    def test_01(self):
        print('---用例01---')

    def test_02(self):
        print('---用例02---')

    def test_03(self):
        print('---用例03---')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

结果
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/599980
推荐阅读
  

闽ICP备14008679号