0

当我使用django.test.TransactionTestCase进行测试时,我发现它使用的是真实数据库。

django.test.TestCase工作正常!)

我已经在我自己的项目中使用简单的代码确认了这一点:

class TestInventoryTransactions(TransactionTestCase):
    def setUp(self):
        print(Item.objects.all())

    def test1(self):
        pass

    def test2(self):
        pass

这个的输出是

[...Bunch of items...]
[]

首先表明正在使用真实数据库而不是空的测试数据库。其次,它会在第一次测试后从数据库中删除所有内容。

我真的不认为这是预期的行为,也不明白为什么会发生。

4

1 回答 1

1

使用“manage.py test”没有这个问题。它仅在手动运行测试文件时发生。

于 2013-04-14T16:01:50.400 回答