Python Django Unittests:如何拆除灯具

时间:2014-02-04 10:36:48

标签: python django

我需要为我的Django-App编写一些测试。为此,我正在使用像我那样加载的灯具:

    from django.test import TestCase    

    class PermissionTest(TestCase):
        fixtures = ['test_groups.json','test_users.json']

        def setUp(self):       
        ... some other stuff

现在我想知道在我的tearDown-Method中写什么来删除我的灯具生成的组和用户。或者它们是自动删除的?

        def tearDown(self):
            ... what has to go here?

1 个答案:

答案 0 :(得分:0)

在运行每个测试之前,django的测试框架将删除已加载的灯具。所以你不需要处理这个。

来自docs

  

具体到底会发生什么:

     

在每个测试用例开始时,在运行setUp()之前,Django将刷新数据库,在调用migrate之后将数据库返回到它所处的状态。

     

然后,安装了所有命名的灯具。在这个例子中,Django将安装任何名为哺乳动物的JSON夹具,然后是任何名为birds的夹具。有关定义和安装灯具的更多详细信息,请参阅loaddata文档。

     

对于测试用例中的每个测试,重复此刷新/加载过程,因此您可以确定测试的结果不会受到另一个测试或测试执行顺序的影响。