即使完成单元测试后,仍保留测试数据(不仅仅是数据库)

时间:2019-08-06 13:46:57

标签: python django database

我想将测试数据库与测试用例运行时创建的数据一起使用,我该怎么办?

我尝试运行正常的django测试,该测试继承了TestCase并在生成测试数据后放置一个断点。现在,如果我通过postgres命令登录到其他终端选项卡中的test_db(由django创建),并对其进行查询,则不会显示任何数据!有人可以解释为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

TestCase将测试包装在一个原子块中并回滚事务,以便不将任何更改保存到数据库。

如果要保存更改,可以使用SimpleTestCase,并设置databases = __all__(Django 2.2+)或allow_database_queries = True(Django的早期版本)。