一.fixture高级用法
@pytest.fixture(scope="function", autouse=False, params=read_yaml(),ids=["d","e","f"],name='db')
(1)scope:作用域
function:在函数之前之后执行
1.autouse=False 手动调用需要在对应的方法里加入fixture的名称
2.fixtrue通过return或者yield返回值,可以把返回值传递到用例中,值是通过固件名称传递的
class级别:
1.手动调用在类上面加上
@pytest.mark.usefixtures("db") db#是固件名称exe_database_sql
(2)autouse:自动执行,默认是False
@pytest.fixture(scope="function", autouse=False) def exe_database_sql(): print("执行sql查询") yield request.param print("关闭数据库链接")
(3)params:实现参数化
1.如何把值传递到Fixtrue是通过在fixtrue函数的参数里面加入request来接收参数,然后通过request.param来取值
def read_yaml(): return ['lib', 'dufu', 'mzx'] @pytest.fixture(scope=&#