我有一个具有以下目录结构的项目:
.
..
core/start.py
tests/test_curve.py
pytest.ini
pytest.ini的内容是:
[pytest]
testpaths = tests
test_curve.py
的内容是:
import core.start
def test_curve():
assert some_valid_stuff
当我在项目根文件夹中运行pytest时,我得到:
import core.start
ImportError: No module named 'core'
我做错了什么?
答案 0 :(得分:1)
您必须在运行测试之前设置PYTHONPATH
:
PYTHONPATH=`pwd` pytest
或者以开发人员模式安装代码:
pip install -e .
pytest
或者在安装代码的虚拟环境中运行测试:
virtualenv mycode
. mycode/bin/activate
pip install .
pytest
deactivate
或使用tox自动创建/激活/停用此类虚拟环境。