Django在测试时保存模型实例,但无法在真实数据库中找到它

时间:2018-04-12 09:32:09

标签: django postgresql unit-testing

我是Django的新手,当我进行测试时,我在setup()函数中创建了一个新的测试模型记录,用于以下测试,它成功了,我可以通过以下代码访问记录,但是当我去检查真实数据库时,新记录不存在。

设置代码如下:

class UserTest(TestCase):
    def setUp(self):
        test_user = User.object.create(name='test')

当我在setUp()函数中设置断点时,以及' test_user'之后创建后,我可以使用' User.object.get()'获取创建的用户,但当我进入真实数据库并检查用户表时,我找不到此记录。顺便说一句,我使用postgreSQL。

测试运动员正在使用它:

class NoDBTestRunner(DiscoverRunner):
    def setup_databases(self, **kwargs):
        pass
    def teardown_databases(self, old_config, **kwargs):
        pass

我想知道创建数据记录的存储位置? 任何建议都会非常有用

1 个答案:

答案 0 :(得分:1)

Django Unit Tests创建一个单独的数据库进行测试。主数据库不用于避免测试可能导致的错误。