class MyClassTest(TestCase):
def setUp(self):
Someclass.objects.create()
def test_first_test(self):
# Here, Someclass.objects.all()[0].pk -> returns 1
def test_second_test(self):
# Here, Someclass.objects.all()[0].pk -> returns 2 !!! (bad !)
使用SetUp()
方法,应该在每次测试之间清除和重新创建数据。那么,为什么 ids 从一个测试增加到另一个?这对我来说并不明显。
这样我就不能基于 id 进行测试(因为它们依赖于其他测试)。这就是为什么我想总是得到1
结果。
请注意,我对数据本身没有任何问题,旧数据从一个测试到另一个测试都被很好地清除了。问题只是关于ID。
我在这里读到了单元测试之间的 django 对象 ids 增量,该问题与数据库有关,而不是与 Django 相关,但是 Django 中有什么技巧可以改变它吗?