fixture作用域(scope)详解
阅读目录:
1. scope 参数
2. 默认是function
3. 执行顺序遵循: sesstion -> package -> module -> class -> function
4. 每一个函数前后均会执行模块中的class
5. 模块中的fixture对函数、方法均有效
6. 测试类中的fixture只对方法有效
7. 在模块和类中有同名的fixture存在时:局部优先,也就是类中的fixture优先
scope参数 – 表示被`@pytest.fixture标记的函数的作用域:
function -- 默认值, 作用域每个测试用例(包含函数/方法),每个用例执行前都会运行一次
class -- 作用于整个类,每个测试类/测试函数执行前都会运行一次
module -- 作用于整个模块(多个类),每个module(每个py文件)执行前都会运行一次,可以实现多个.py跨文件共享前置,后置
package -- 每个python包执行前都会运行一次
session -- 作用于整个session, 每个测试前运行一次
**若fixture放conftest.py 中,可以理解为:
scope参数为 function -- 每一个测试文件中的所有测试用例执行前都会执行一次conftest文件中的fixture
scope参数为 class -- 每一个测试文件中的测试类执行前
订阅专栏 解锁全文
2217





