用于单元测试的 Django 独立数据库引擎



我是Django的新手,并遵循了几个教程。我创建了一个单独的应用程序进行功能测试。我还为我的产品 DBMS 设置了一个 postgres 数据库引擎,但为了测试,我想在内存中使用 SQLite3。有人可以告诉我如何用另一个 settings.py 文件覆盖 prod 数据库吗?我将覆盖文件放在功能测试应用文件夹中的什么位置?Django 如何知道用于生产与测试的设置?任何帮助表示赞赏,谢谢!

作为一个选项:创建一个文件名settings_test.py,其中包含以下内容:

from settings import * # if your main settings file is settings.py
DATABASES['default']['ENGINE'] = 'django.db.backends.sqlite3'
# and whatever other settings like db name etc.

然后使用以下设置运行测试:

./manage.py test --settings=settings_test

补充迪玛的回答,你可以看看:https://docs.djangoproject.com/en/1.4/internals/contributing/writing-code/unit-tests/#using-another-settings-module

最新更新