使用Pytest时的Python系统路径问题

使用Pytest时的Python系统路径问题

💡 原文英文,约500词,阅读约需2分钟。
📝

内容提要

运行pytest时,测试脚本可能因目录不同而导入失败。可以通过设置pythonpath选项添加路径,或在tests目录中创建空的conftest.py文件或__init__.py来解决。pytest会将测试模块的父目录添加到sys.path中,以确保模块正确导入。

🎯

关键要点

  • 运行pytest时,测试脚本可能因目录不同而导入失败。
  • 导入错误通常意味着实际代码模块不在python路径中。
  • 可以通过设置pythonpath选项添加路径来解决导入错误。
  • 使用python -m pytest可以将当前目录添加到sys.path中。
  • 在父目录中创建空的conftest.py文件也可以解决问题。
  • 如果tests目录中没有__init__.py,pytest会将测试模块视为独立模块。
  • 在tests目录中添加__init__.py可以将其视为包,从而正确找到项目根目录。
  • pytest会根据测试模块的基名作为模块名,避免在tests目录中有相同名称的测试模块。
➡️

继续阅读