我注意到鼻子和test.py无法在tests
中运行测试,除非设置了PYTHONPATH。特别是,它无法导入我的模块。
为什么会这样?
(venv)suyati@SUYPC021:~/dev/proj/backend/proj$ PYTHONPATH=`pwd` py.test
============================================= test session starts =============================================
platform linux2 -- Python 2.7.9 -- py-1.4.30 -- pytest-2.7.2
rootdir: /home/dev/proj/backend/proj, inifile:
collected 2 items
default_test.py .
tests/default_test.py .
========================================== 2 passed in 0.29 seconds ===========================================
没有PYTHONPATH。
这显示default_test
中的tests
未能在顶级导入commons
。
(venv)suyati@SUYPC021:~/dev/proj/backend/proj$ py.test
============================================= test session starts =============================================
platform linux2 -- Python 2.7.9 -- py-1.4.30 -- pytest-2.7.2
rootdir: /home/dev/proj/backend/proj, inifile:
collected 1 items / 1 errors
default_test.py .
=================================================== ERRORS ====================================================
___________________________________ ERROR collecting tests/default_test.py ____________________________________
tests/default_test.py:3: in <module>
from commons import ZONES
E ImportError: No module named commons
====================================== 1 passed, 1 error in 0.47 seconds ======================================