pytest fixyure

pytest是什么?

pytest是一个测试框架!今天我们讲一讲pytest.fixture的功能:
fixture的特性 既可以做前置处理又可以做后置处理(比如需要登录的接口在执行前必须完成登录)
yield 的作用是区分前置和后置的,在yield之前的代码指的是前置处理代码,之后的代码是后置处理代码
def db():
db_connect= '数据库连接成功'
yield db_connect #和yield在一行,表示返回这个数据对象
print ('断开数据库连接')
scope的作用域 session\package\module\calss\function
seesion : 在pytest的一次执行中,不管这个fixture函数被调用多少次,他只执行一次
package:在每一个包中执行一次
module:在同一个模板中不管调用多少次,他只执行一次
class:在同一个测试类中 不管调用多少次,他只执行一次
function:函数,每一条测试用例,这个值也是scope默认参数值
在做接口测试时,很多接口都要依赖登录接口所产生的token
@pytest.fixture(scope='session',autouse=Ture)
def get_token():
return token
autouser这个参数是自动执行无需调用
ui自动化的用例每次执行完之后,都让他回到首页
@pytest.fixture(session='finction',autouse=True)
def case_setup_teardown():
yield
print('返回首页')

你可能感兴趣的:(pytest fixyure)