我的測試中正常工作時,我的目標是單一的功能(見「目標」字段中的圖像):Django的芹菜單元測試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
注意,我的T EST序列通過「環境變量」(見本在PIC太)包括我的設置:
DJANGO_SETTINGS_MODULE=questionator_app.settings.development;PYTHONUNBUFFERED=1
documentation提到了芹菜「使用自定義的測試運行芹菜測試」,但是這是現已解散的djcelery包。我雖然通過複製/粘貼/調整this mentioned test runner並按照描述使用它,但我得到了同樣的錯誤。
不幸的是使用CELERY_ALWAYS_EAGER也不起作用http://docs.celeryproject.org/en/latest/configuration.html#celery-always-eager
我希望得到一些指導。祝福, Andy。
取決於測試運行的順序以及您的設置順序,測試可能會嘗試在可用之前加載芹菜模塊。通常測試是按字母順序運行的,因此確保在'.test_mturk_views.'之前運行的任何東西都能夠加載芹菜的東西。 – blakev