我正在为 Django 中的自定义管理器编写一个测试套件,并且想要测试大量项目。
本质上,由于组合爆炸,它需要创建数千个项目。
我需要的是一种在数据库中创建大量django 对象并通过整个测试类保留它们而不是重新创建它们的方法。
我有以下代码:
class CustomConceptQuerySetTest(TestCase):
def setUp(self):
pass #make lots and lots of items.
def test_is_public(self):
pass # check if returned items in the object.public() queryset are actually "public"
def test_is_editable(self):
pass # check if returned items in the object.viewable() queryset are actually "viewable" only to certain users.
不幸的是,setUp
在每次测试之前都会调用,但测试期间内容不会改变,只会读取,并且每次都是一样的。
Django 中有没有办法保留数据库,或者防止测试类中的回滚或破坏?