Я пытаюсь использовать носовые тесты для запуска своих тестов в такой структуре каталогов.
src
- file1.py
- ...
test
- helper.py
- test_file1.py
Как видите, в test_file1.py есть несколько функций, которые проверяют file1.py, поэтому он импортирует file1.py следующим образом:
# In file1.py
import file1
import helper
# Tests go here...
Я также использую файл helper.py, в который встроена полезная функциональность, чтобы мне было проще создавать тесты. Эта функциональность достигается за счет расширения нескольких классов в моем реальном коде и переопределения некоторых методов. Итак, helper.py выглядит примерно так:
# In helper.py
import file1
# Use stuff in file1.py
У меня проблемы с пониманием того, как нос импортирует эти вещи с помощью своего пользовательского импортера. Мне удалось заставить мой тестовый файл импортировать file1.py, запустив nosetest ../tests
в каталоге src, но в настоящее время я получаю сообщение об ошибке, похожее на:
File helper.py:
ImportError: cannot import name file1
Как Нос выполняет импорт и есть ли способ заставить его объединить все мои файлы test/src вместе, чтобы они могли импортировать друг друга, пока я храню их в отдельных папках?
import src.file1
вheader.py
или переместите всю папкуtest
в папкуsrc
- person J0HN   schedule 03.10.2014test_file1.py
может импортироватьfile1.py
, а вспомогательный файл, который импортирует ИТ-специалист, - нет. - person ImpGuard   schedule 03.10.2014file1.py
, а неfile1
? - person J0HN   schedule 03.10.2014