djangoテストケースはDEBUG = False、TEMPLATE_DEBUG = Falseで実行され、Trueに変更できます。特定の機能のために、djangoテンプレートのレンダリングエラーが発生して正常に動作しない場合のテストケースの失敗
from django.test.utils import override_settings
@override_settings(DEBUG=True)
def test_one_function(self):
# This test should be failing and is not.
# If I did not test manually I would'nt know !
pass
を使用してしかし、おそらく一度にeveythingを申請し、より良い、より一般的な解決策はありますか?
テンプレートにエラーがあります。別のテンプレートが含まれており、リンクが壊れています。 DEBUG = Trueで手動でチェックすると、TemplateDoesNotExistエラーが発生します。しかし、私のテストケースでは、URLが壊れているインクルードなしでレンダリングされ、エラーはスローされず、http_statusは200になります。私は既に非常に一般的なインクルードテンプレートを別の場所でテストしました。内部が正しくレンダリングされました。しかし、私はレンダリングが失敗するのを見たいと思っています。それが私のテストの目的です!
TEMPLATE_STRING_IF_INVALIDをException(hereが見つかりました)に設定しようとしましたが、壊れたインクルードでは機能していないようです。
デバッグでテストを実行しないというdjangoの設計原則を破ることなく、テスト中にすべてのレンダリングエラーを発生させる例外がありますか?