Pytest运行报fixture 'shared_datadir'未找到,如何修改TEST_DATA_DIR测试数据路径?
修复方案
你只需要两步就能解决该问题,无需额外安装依赖插件:
步骤1:补全shared_datadir fixture
在测试目录下新建(如果已存在就直接编辑)conftest.py文件,添加如下代码,直接复用项目已定义的TEST_DATA_DIR变量生成fixture:
import pytest from . import TEST_DATA_DIR @pytest.fixture(scope="session") def shared_datadir(): # 作用域设为session即可,测试数据目录全局共用无需重复实例化 return TEST_DATA_DIR
步骤2:修改本地测试数据路径
打开测试目录下的__init__.py文件,把原有占位的旧路径替换为你本地存放测试数据的目录路径即可:
from pathlib import Path # 尖括号内容替换为你本地的测试数据根目录,支持绝对路径/相对路径 TEST_DATA_DIR = Path("<your local test data root path>")
修改完成后直接运行pytest命令即可正常执行测试,所有用例中引用shared_datadir的逻辑会自动适配你配置的本地路径,不需要修改任何测试用例代码。
内容的提问来源于stack exchange,提问作者Omar Van Eer
相关产品推荐
相关产品推荐

