1

在 Django 中,我使用了多个数据库,但是通过测试多个数据库的功能 1 数据库不应该创建一个测试数据库,如果你运行 manage.py test **。我该如何解决这个问题。

4

1 回答 1

2

在您的settings.py文件中,您可以告诉 Django 在测试时使用什么数据库。例如,如果您想使用以下代码,请执行以下操作SQLite

设置.py:

if 'test' in sys.argv:
    DATABASES['default'] = {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': 'tests.db',
    }

Django每次运行. manage.py test_ _test.py

User model为示例生成一个夹具,请使用以下代码:

python manage.py dumpdata auth.User --indent=2 > app_name/fixtures/admin.json

要使用fixtures您的结构,您tests.py可以这样:

测试.py:

from django.test import TestCase

class MyTests(TestCase):
    fixtures = [admin.json]

    def setUp(self):
        # other setup code here

    def test_the_obvious(self):
        assert True == True
于 2014-08-12T19:22:10.507 回答