django - 如何在 Django 中测试空查询集?

标签 django unit-testing

我正在 Django 中测试一个 View ,该 View 应该从一个对象中删除所有标签。为此,我使用这个断言:

self.assertEqual(list(Tag.objects.get_for_object(Animal.objects.get(pk=1))),[])

这很有效,因为我得到了一个空列表作为返回。我将 Django 查询集包装在一个列表中以避免这种情况:
AssertionError: [] != []

将空的 Django 查询集与空列表进行比较。

但由于这不是我喜欢的东西,我想知道是否有更好的方法来进行该测试。

最佳答案

只需使用 exists

self.assertFalse(Tag.objects.get_for_object(Animal.objects.get(pk=1)).exists())

关于django - 如何在 Django 中测试空查询集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9669853/

相关文章:

python - 如何在 django 中按应用程序订购片段?

c# - 为什么列表比较失败,如果列表(似乎)相同

java - 捕获异常时写入的日志消息的单元测试

unit-testing - DVCS Repo 布局和单元测试

unit-testing - Qt单元测试中使用qDebug

python - 在 Django 中,显示的是 HTML 代码而不是实际文本

python - ember-django-adapter 代码示例

django - 使用heroku部署django应用程序——gunicorn未安装

javascript - 无法加载 "IE",未注册! Karma 上的错误消息

python - Django:将来自管理员的新行存储在数据库中并通过 REST API 返回它们