![]() |
1
51
自Django 1.3以来, assertNumQueries 完全适用于此目的。 |
![]() |
2
39
维尼的回答是正确的,只加了一点。
Django的单元测试框架实际上在运行时将debug设置为false,因此无论您使用的是什么
如果您确定启用调试不会影响您的测试(例如,如果您是专门测试db命中,听起来像您这样),那么解决方案是在单元测试中临时重新启用调试,然后将其设置回:
|
![]() |
3
4
如果你有
|
![]() |
4
3
在现代Django(>=1.8)中,它有很好的文档记录(也有1.7的文档记录) here 你有办法 重新设置查询 而不是分配 connection.queries=[] 这确实引发了一个错误,类似的错误适用于django>=1.8:
您还可以考虑在安装/拆卸时重置查询,以确保为每个测试重置查询,而不是在finally子句上执行查询,但这种方法更显式(尽管更详细),或者您可以使用 重新设置查询 在try子句中,计算从0开始的查询所需的次数。 |
![]() |
5
3
如果您正在使用
|
![]() |
6
2
如果不想使用testcase(与 assertNumQueries )或者将设置更改为debug=true,您可以使用上下文管理器CaptureQueriesContext(与 断言数查询 使用)。
|
![]() |
Patrick Bond · 如何将模型中的函数结果添加到列表中? 6 月前 |
![]() |
bur · 每次从模板调用方法都会查询数据库吗? 6 月前 |
|
Stefan · 在子目录中设置Django 6 月前 |
![]() |
vale383 · 如何在Django端点中查找user_id 6 月前 |
![]() |
Kovy Jacob · Django在动态URL段中添加斜线 7 月前 |
![]() |
user987 · 如何在Django中访问提交的表单请求数据 7 月前 |
![]() |
user24242514 · 将嵌套查询字符串请求转换为字典 7 月前 |