1、setup/teardown 每个用例之前、之后执行一次
2、setup_class/teardown_class 每个类之前、之后执行一次
3、@pytest.fixture(scope=“作用域”,params=“数据驱动”,autouse=“自动执行”,ids=“自定义参数名”,name=“重命名”)
作用域:
function 函数级别
class 类级别
module 模块级别
session 会话级别
autouse:
True 自动执行
False 需要调用才执行
示例代码:
@pytest.fixture(scope="function",params=MySqlDB)
def get_resrc_id_fixture():
'''获取数据源的id前置'''
dbinfo = {
"host": MySqlDB[0]["MySqlDB"]["host"],
"user": MySqlDB[0]["MySqlDB"]["user"],
"password": MySqlDB[0]["MySqlDB"]["mysql_psw"],
"port": MySqlDB[0]["MySqlDB"]["port"]
}
db = DbConnect(db_cof=dbinfo, database="aio")
select_sql = "select * from aio_resource where resrc_name='mysql数据源';"
result = db.select(select_sql)
print(result)
id = result[0]["id"]
return id
注意: