在单元测试中设置Django的环境变量

13 浏览
0 Comments

在单元测试中设置Django的环境变量

我希望能够在我的Django应用程序中设置环境变量,以便于测试时能够运行。例如,我的视图依赖于几个API密钥。

有一些方法可以在测试期间覆盖设置,但我不希望将它们定义在settings.py中,因为那是一个安全问题。

我尝试在我的设置函数中设置这些环境变量,但这不起作用,无法给Django应用程序提供值。

class MyTests(TestCase):
    def setUp(self):
        os.environ['TEST'] = '123'  # 不会传递给应用程序

当我在本地进行测试时,我只需运行一个带有.env文件的命令foreman start -e .env web,它会为os.environ提供值。但在Django的unittest.TestCase中,我不知道是否有设置的方法。

我该如何解决这个问题?

0