使用Pytest测试时无法导入自定义代码的问题求助

Pytest无法导入自定义代码的解决方案
确认项目结构与导入路径
保证测试文件和被测试代码的结构符合Python包规范,示例结构:your_project/ ├── src/ │ ├── __init__.py │ └── your_module.py └── tests/ ├── __init__.py └── test_your_module.py若测试文件在
tests目录、被测试代码在src,需将src目录加入Python路径。手动添加项目路径到Python环境
在测试文件开头插入代码:import sys from pathlib import Path sys.path.append(str(Path(__file__).parent.parent))或者终端运行测试前设置环境变量:
export PYTHONPATH=/path/to/your_project检查模块命名与导入语句
确保导入的模块名和实际文件名完全匹配(Python区分大小写),比如文件名为YourModule.py,导入时要写import YourModule,不能写成import yourmodule。配置pytest自动识别路径
在项目根目录创建pytest.ini文件,写入:[pytest] pythonpath = src这样pytest会自动将
src目录加入Python路径。验证虚拟环境一致性
确认运行pytest的虚拟环境和安装被测试代码依赖的环境是同一个,避免环境隔离导致模块找不到。
内容的提问来源于stack exchange,提问作者Rian
相关产品推荐
相关产品推荐

