是什么?
setup:前置步骤,用于一些数据准备等等
tesrdown:后续操作,清理数据,关闭文件等等
用例运行级别:
模块级 (setup_module / teardown_module) 开始于模块始末,全局(整个文件中所有用例只调用一次)
函数级 (setup_function / teardown_function) 只对函数用例生效(每个用例执行前都会调用一次)
类级 (setup_class / teardown_class)只在类中前后运行一次(在类中)
方法级 (setup_method / teardown_method)开始于方法始末(在类中)
类里面的(setup / teardown)运行在调用方法的前后
PS:
有个场景case
前置条件:登录接口生成token
后续查询接口需要此token
步骤:用例1 - 查询接口 - 查询成功 (需要用到token)
用例2 - 查询接口 - 无权限 (token错误)
分析:a> 这样的场景case需要先写一个登录接口的方法,return出token,传到用例1中,
之后再写个获取错误token的登录接口,传到用例2中
b> 并且需要自定义一个@pytest.fixture,拿到已经加到header里的session,再在查询接口中传入fixture即可
(先定义session机制,登录接口请求成功后,通过字典取值拿出token,然后加到请求头 - s.header.updata(token))
c> 用例2 既然是要传错误token,那就不需要fixture,在用例内部加入错误的header即可。