2016-06-09 72 views
9

使用Pycharm,我得到了一些不同的結果,然後從終端運行命令。我注意到,在更新我的視圖之後,只有從IDE運行測試時,我纔得到「應用程序尚未加載」異常。Django測試錯誤只與pycharm - 不是終端|應用程序尚未加載

如果我通過終端「python3 manage.py test」運行測試,沒有問題。

IDE運行測試沒有問題,這個視圖文件

def wine_data(request): 
    return HttpResponse("<html><title>Wine Data</title></html>") 

如果我改變視圖文件到這一點:

def wine_data(request): 
    return render(request, 'wine_data.html') 

我得到這個錯誤(從IDE只跑時)

/home/codeamend/Projects/python/OldBullTavern/venv/bin/python /opt/pycharm-professional/helpers/pycharm/utrunner.py /home/codeamend/Projects/python/OldBullTavern/obt/wine/tests.py true Testing started at 11:38 AM ...

Error Traceback (most recent call last): File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/utils.py", line 86, in getitem return self._engines[alias] KeyError: 'django'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/codeamend/Projects/python/OldBullTavern/obt/wine/tests.py", line 16, in test_wine_data_loads_correct_html response = wine_data(request) File "/home/codeamend/Projects/python/OldBullTavern/obt/wine/views.py", line 6, in wine_data return render(request, 'wine_data.html') File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/shortcuts.py", line 67, in render template_name, context, request=request, using=using) File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/loader.py", line 96, in render_to_string template = get_template(template_name, using=using) File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/loader.py", line 26, in get_template engines = _engine_list(using) File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/loader.py", line 143, in _engine_list return engines.all() if using is None else [engines[using]] File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/utils.py", line 110, in all return [self[alias] for alias in self] File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/utils.py", line 110, in return [self[alias] for alias in self] File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/utils.py", line 101, in getitem engine = engine_cls(params) File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/backends/django.py", line 31, in init options['libraries'] = self.get_templatetag_libraries(libraries) File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/backends/django.py", line 49, in get_templatetag_libraries libraries = get_installed_libraries() File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/template/backends/django.py", line 132, in get_installed_libraries for app_config in apps.get_app_configs()) File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/apps/registry.py", line 137, in get_app_configs self.check_apps_ready() File "/home/codeamend/Projects/python/OldBullTavern/venv/lib/python3.5/site-packages/django/apps/registry.py", line 124, in check_apps_ready raise AppRegistryNotReady("Apps aren't loaded yet.") django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.

Process finished with exit code 0

任何想法?

+1

所以,你要找的是能夠從IDE運行unittest(涉及_Django_東西)(你可以通過'manage.py test'運行它)。你如何試圖運行它(從IDE控制檯或右鍵單擊它)?我想你有_Pycharm_社區(無薪)版? – CristiFati

+0

FWIW,我在上週的PyCharm專業版中實現了這一點。仍然在努力。 – LarrikJ

+0

那麼,從2017.1.3降級到2017.1.2固定我的,這沒什麼幫助。 – LarrikJ

回答

0

您的測試有沒有正確的「工作目錄」值和「目標」?

我面臨類似的問題與行爲測試...

相關問題