pytest的装饰器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytest的装饰器相关的知识,希望对你有一定的参考价值。

参考技术A 注意这里的方法名都是固定的:setup前置方法放在所有用例的上方,teardown放在用例的尾部,这样一来这个脚本里的所有用例都会先去执行前置方法,最后执行后置方法。setup_class是类的前置方法。

fixture()里面的参数有五种:

scope,这个参数是指在哪个模块前执行,比如scope=‘function’,这是指在每个函数前执行,其余的还有class、moudle等

params,这个参数是指参数化传参,比如params=['w1','w2'],这是将w1,w2这两个参数依次传入用例之中。

autouse,这个参数是是否自动执行的参数,不传入则视为默认,默认是false,不执行。

@pytest.mark.run(order=int):order后的数字来指定用例的执行顺序

@pytest.mark.skip(reason='str'):skip参数可以将该用例标记为跳过,并且标注跳过原因

@pytest.mark.skipif(condition=  ,reason='str'):当condition条件为true时,skipif将会执行跳过该条用例,并注明原因

@pytest.mark.smoke:将该用例标记为冒烟用例,冒烟测试时,可以单独执行该用例

@pytest.mark.xfail:使用xfail标记测试用例预期失败,如果测试用例运行实际成功则显示XPASS,实际失败则显示XFAIL

以上是关于pytest的装饰器的主要内容,如果未能解决你的问题,请参考以下文章

在使用 pytest 时在装饰器中模拟对象

pytest运行方式及装饰器的使用

@Patch 装饰器与 pytest 夹具不兼容

如何通过自定义装饰器提供非夹具 pytest 参数?

python自动测试Pytest中Fixture装饰器

pytest常用装饰器