簡體   English   中英

沒有電子郵件后端的Django測試

[英]django testing without email backend

我想在Django應用程序中測試視圖。 所以我通過鍵入python打開python shell,然后from django.test.utils import setup_test_environment 似乎工作正常。 然后我輸入setup_test_environment()並說

django.core.exceptions.ImproperlyConfigured:請求設置EMAIL_BACKEND,但未配置設置。 您必須在訪問設置之前定義環境變量DJANGO_SETTINGS_MODULE或調用settings.configure()。

我不需要在測試中發送郵件,所以Django為什么要我配置電子郵件后端?

我們是否需要為任何測試配置電子郵件后端,即使它不需要它?

您不需要定義EMAIL_BACKEND設置(它具有默認設置),但是您確實需要定義一個設置模塊。 您可以在您的Shell環境中設置DJANGO_SETTINGS_MODULE ,或將os.environ['DJANGO_SETTINGS_MODULE']指向您的設置模塊。

請注意,調用python manage.py shell將為您設置Django環境,其中包括設置DJANGO_SETTINGS_MODULE和調用django.setup() 您仍然需要調用setup_test_environment()才能在python shell中手動運行測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM