gpt4 book ai didi

python - pytest 出现 ModuleNotFoundError

转载 作者:行者123 更新时间:2023-12-01 21:17:39 24 4
gpt4 key购买 nike

我想要我的tests folder separate到我的应用程序代码。我的项目结构是这样的

myproject/
myproject/
myproject.py
moduleone.py
tests/
myproject_test.py

myproject.py

from moduleone import ModuleOne

class MyProject(object)
....

myproject_test.py

from myproject.myproject import MyProject
import pytest

...

因为我使用命令,所以我使用 myproject.myproject

python -m pytest

来自项目根目录./myproject/

但是,这些模块中的导入会失败

E ModuleNotFoundError: No module named 'moduleone'

我正在运行 Python 3.7,并且从 3.3 开始,不再需要空的 __init__ 文件,这意味着我的项目变成了 implicit namespace package

但是,我尝试在 myproject/myproject/ 中添加 __init__.py 文件,并尝试在 myproject/myproject/ 中添加 conftest.py 文件myproject/ 但两者都不起作用

我有read answersmess with the paths然后在其他问题中投票评论说 not to .

什么是正确的方法以及我缺少什么?

编辑;

可能相关,我使用 requirements.txt 使用 pip 安装 pytest。这可能有关系吗?如果是这样,在这种情况下安装 pytest 的正确方法是什么?

编辑2:

sys.path中的路径之一是/usr/src/app/,它是一个与/my/local/path/相连的docker卷myproject/.

卷应该是 /my/local/path/myproject/myproject/ 吗?

最佳答案

不确定此解决方案是否特定于我的问题,但我只需将 __init__.py 添加到我的 tests 文件夹中即可解决问题。

关于python - pytest 出现 ModuleNotFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54895002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com