Reputation: 191
I have a problem in import of modules in my project. I was creating tests and I cant import my main to test one end point of my application, from the test file teste_ex.py
. This is my project structure:
backend_api/
api/
__init__.py
main.py
testes/
__init__.py
test_ex.py
In my test_ex.py Im trying to import main
in this way:
import api.main
from webtest import TestApp
def test_functional_concursos_api():
app = TestApp(main.app)
assert app.get('/hello').status == '200 OK'
I omly get ImportError: No module named 'api'
Upvotes: 2
Views: 7814
Reputation: 2459
Here's my best guess as to what might help:
You should make sure that the path to the directory in which your main.py
file resides can be found in sys.path
. You can check this yourself by running this snippet in test_ex.py
:
import sys
for line in sys.path:
print line
If the directory in which main.py
is found is not included in your path
, you can append that path to sys.path
, like this (include this snippet in test_ex.py
):
import sys
sys.path.append("/path/to/your/module/backendapi/api/")
Upvotes: 4