我有一个带有settings.py文件的django应用程序。默认情况下,我的django应用程序接受此文件但是,对于测试,我需要另一个settings.py文件(例如tests / settings_test.py)。
我使用unittest进行测试。
我的问题:如何配置我的测试以使用tests / settings_test.py文件而不是默认的settings.py文件?
test_mytest.py
import unittest
import os
import sys
class TestBase(unittest.TestCase):
....
if __name__ == '__main__':
print os.environ['DJANGO_SETTINGS_MODULE'] # It shows 'myappication.settings'
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myappication.tests.settings")
print os.environ['DJANGO_SETTINGS_MODULE'] # It shows 'myappication.settings' and I think it should show 'myappication.tests.settings'
unittest.main()
答案 0 :(得分:0)
您至少有两个选择:
1.环境变量https://docs.djangoproject.com/en/dev/topics/settings/#envvar-DJANGO_SETTINGS_MODULE
2.配置https://docs.djangoproject.com/en/dev/topics/settings/#custom-default-settings
因此,要么在运行测试之前设置环境变量,要么导入设置并在测试套件中配置它们。