我开始为依赖于几个环境变量的 Django 应用程序编写测试。当我在 shell 中测试它时,我可以导入 os 并指定变量,我的测试工作得很好。但是,当我将它们放入tests.py 时,我仍然得到一个关键错误,因为没有找到这些变量。这是我的测试的样子:
from django.utils import unittest
from django.test.utils import setup_test_environment
from django.test.client import Client
import os
os.environ['a'] = 'a'
os.environ['b'] = 'b'
class ViewTests(unittest.TestCase):
def setUp(self):
setup_test_environment()
def test_login_returning_right_template(self):
""" get / should return login.html template """
c = Client()
resp = c.get('/')
self.assertEqual(resp.templates[0].name, 'login.html')
这是初始化这些变量的错误位置吗?我尝试在 setUp 上执行此操作,但结果相同 - 找不到它们。关于如何在运行测试套件之前初始化环境变量的任何建议?谢谢!卢卡