2016-09-20 2 views
0

мои тесты работают хорошо, когда моя цель одна функция (см поле «Target» в изображении):Джанго модульных тестов сельдерей с PyCharm «Нет модуля по имени сельдерей»

questionator.test_mturk_views.TestReport.submit 

Однако, когда я указываю мой цель включить все тесты в моем questionator приложение:

questionator 

Я получаю эту ошибку:

Error ImportError: Failed to import test module: src.questionator.test_mturk_views Traceback (most recent call last):
File "C:\Python27\Lib\unittest\loader.py", line 254, in _find_tests module = self._get_module_from_name(name) File "C:\Python27\Lib\unittest\loader.py", line 232, in _get_module_from_name import(name) File "C:\Users\Andy\questionator_app\src__init__.py", line 5, in from .celery import app as celery_app # noqa ImportError: No module named celery

Обратите внимание, что мой т ресы включают мои настройки через «переменные среды» (см это в ПОС тоже):

DJANGO_SETTINGS_MODULE=questionator_app.settings.development;PYTHONUNBUFFERED=1 

сельдерей documentation упоминает «Использование пользовательских тест бегун для тестирования с сельдереем», но это в ныне несуществующей пакет djcelery , Я сделал, хотя скопировал/вставку/tweak this mentioned test runner и использовал его, как описано, но я получаю ту же ошибку.

К сожалению, с помощью CELERY_ALWAYS_EAGER также не работает http://docs.celeryproject.org/en/latest/configuration.html#celery-always-eager

Я был бы признателен за некоторые рекомендации. С наилучшими пожеланиями, Энди.

enter image description here

+0

В зависимости от заказа на запуск тестов и порядка ваших настроек, тест может пытаться загрузить модули сельдерея до его доступности. Обычно тесты выполняются в алфавитном порядке, поэтому убедитесь, что все, что работает до '.test_mturk_views.', сможет загрузить материал Celery. – blakev

ответ

0

с самыми же-проблемами (скорее всего, меня),

Я последовал официальный tutorial для получения сельдерея, работающий в моем проекте. Они советовали ниже: enter image description here

Просто сделать последний импорт явно решить мою проблему:

from taskapp.celery import app as celery_app # noqa 

Я буду видеть, если я могу подтолкнуть создатель сельдерея, чтобы обновить свой учебник (pull request).

Смежные вопросы