一、fixture装饰器实现部分用例的前后置
1.它存在的意义
setup()和teardown()方法是每个用例执行的前置和后置;而fixture装饰器可以执行所有、还有部分的前后置
2.声明方式
方法前声明该函数为fixture函数:
3.五个参数解析
4.五个参数如何使使用?
scope作用范围
scope=“function” :只对测试方法 参数中调用钩子函数的生效
scope=“class” :作用在每一个类的前置,后置;
autouse自动使用,默认为false;故scope为"class"、"module"、"session"时,要设置为True;scope为"function"时,若设置为false,在不需要执行的方法参数中不调用钩子函数,则该方法不受钩子函数的影响.
如果一个模块里面有两个类,scope="class"的时候会执行两次,如果是moudle(每个py文件)只会执行一次.
整个package生效
params参数化
支持列表【】 ,元组(),字典列表:列表中有字典【{},{}】,字典元组:元组中有字典({},{})
怎么进行传参?
首先要在声明的时候加上params参数,可以是列表、元组、列表字典、元组字典
然后在该装饰器函数中返回参数,注意是固定写法
钩子函数 调用的方法 执行结果name
起了别名,原来的名称就用不了,相当于改名字.
参考:
https://blog.csdn.net/qq_43151742/article/details/122201679
https://docs.pytest.org/en/latest/how-to/fixtures.html
网友评论