Pytest 的路径错误:'ImportError: No Module Named...'
当使用 Pytest 并遇到令人烦恼的错误 'ImportError:没有名为...的模块”,该问题通常源于 Python 的模块导入行为。 Pytest 会遍历目录来定位模块,但是当在模块的父目录之外运行时,可能会找不到它们。
最近 Pytest 版本的推荐方法(>= 7)
现代版本的 Pytest 通过“pythonpath”配置选项提供了更简单的解决方案。通过在“pyproject.toml”或“pytest.ini”文件中定义“pythonpath”,您可以将必要的模块目录添加到Python的搜索路径。
Pytest的Conftest解决方案 7
对于旧版本的 Pytest,一种侵入性较小的方法是在项目的根目录中创建一个空的“conftest.py”文件。 Pytest 会在测试收集期间自动将此目录添加到 Python 的搜索路径中。特定项目结构的提示
结论
通过使用“pythonpath”修改 Python 的搜索路径配置或“conftest.py”文件,您可以解决“ImportError:没有名为...的模块”问题,并确保跨不同的测试顺利进行环境。以上是如何修复 Pytest 的'ImportError:No Module Named...”问题?的详细内容。更多信息请关注PHP中文网其他相关文章!