我有以下目录结构:
Chippa/
bin/
__init__.py
app.py
tests/
__init__.py
app_tests.py
tools.py
templates/
hello_form.html
index.html
layout.html
docs/
在我的app_tests.py
文件中,我有:
from nose.tools import *
from bin.app import app
from tests.tools import assert_response
当我尝试从app_tests.py
目录外部运行tests
时,在Chippa
目录内的测试目录上方一级,如下所示:
python tests/app_tests.py
我收到以下错误:
Traceback (most recent call last):
File "tests/app_tests.py", line 3, in <module>
from bin.app import app
ImportError: No module named bin.app
但我在__init__.py
目录中确实有一个空的bin
,我认为这会阻止这个问题。我在这里错过了什么?
答案 0 :(得分:2)
要使该导入起作用,您必须首先运行正确的模块。所以,而不是
python tests/app_tests.py
,试试
python -m tests.app_tests