【发布时间】:2021-09-28 13:25:30
【问题描述】:
断言两个查询集相等的最佳/最易读的方法是什么?我想出了一些解决方案:
# option 1
assert sorted(qs1.values_list("pk", flat=True)) == sorted(qs2.values_list("pk", flat=True))
# option 2 (need to assert length first because set might remove duplicates)
assert len(qs1) == len(qs2)
assert set(qs1) == set(qs2)
我知道 Django 有一个方法django.test.TransactionTestCase.assertQuerysetEqual。 pytest-django 有类似的东西吗?我在documentation 中没有看到它。
【问题讨论】:
标签: python django django-testing pytest-django