我开始学习pytest,稍后我想将其与Travis集成。我已经创建了第一个测试,并且可以从PyCharm运行它们而没有任何问题。但是,当我尝试从Linux终端运行pytest时,出现以下错误:
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/lib/python3.6/importlib/__init__.py:126: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
test_prob.py:1: in <module>
from src.agents import prob
E ModuleNotFoundError: No module named 'src'
我为他们找到了一些类似的问题和解决方案,但没有一个对我有用。 My project structure looks as follow
答案 0 :(得分:0)
似乎您已经在PyCharm中将src
标记为“源根”目录(该目录的蓝色表示该目录),这意味着它已添加到PATH。
这就是为什么它可以在PyCharm中运行,而不是在shell中运行的原因。您的PyCharm和终端环境具有不同的PATH
设置。
尝试更改导入来源
from src.agents import prob
到
from proj_lokalizacja.src.agents import prob
同时在同一位置运行pytest
(如我们在评论中所述)
如果您不想更改导入语句,则必须更新PATH
环境变量以使其也包含src
目录