pytest conftest通过fixture实现变量共享

conftest.py

scope="module" 只对当前执行的python文件 作用

复制代码
@pytest.fixture(scope="module")
def global_variable():
    my_dict = {}
    yield my_dict

test_case7.py

复制代码
import pytest

list1 = []


def test_case001(global_variable):

    data1 = '123'
    global_variable.update({'test_case_data1': data1})


def test_case002(global_variable):
    print('\n', global_variable)
    data2 = '123'
    global_variable.update({'test_case_data2': data2})

def test_case003(global_variable):

    print('\n', global_variable)

if __name__ == '__main__':
    pytest.main(['s', 'v', 'test_case7.py'])
    pass

test_case8.py

复制代码
import pytest


def test_case001(global_variable):

    print('\n', global_variable)

if __name__ == '__main__':
    pytest.main(['s', 'v', 'test_case8.py'])
    pass

scope="session" 可跨py文件共享变量

复制代码
# 在 conftest.py 中定义全局变量
@pytest.fixture(scope="session")
def global_variable():
    my_dict = {}
    yield my_dict

Pytest fixture 的四种作用域:session、module、class 和 function-CSDN博客

相关推荐
姚青&6 天前
PyCharm 配置与界面化运行
pytest
姚青&6 天前
Pytest 测试用例断言
测试用例·pytest
姚青&6 天前
Pytest 命名规则
pytest
姚青&6 天前
Pytest 测试用例结构
测试用例·pytest
姚青&6 天前
Pytest 简介、安装与环境准备
pytest
测试渣7 天前
持续集成中的自动化测试框架优化实战指南
python·ci/cd·单元测试·自动化·pytest
小凯123458 天前
pytest框架-详解(学习pytest框架这一篇就够了)
python·学习·pytest
逻极8 天前
pytest 入门指南:Python 测试框架从零到一(2025 实战版)
开发语言·python·pytest