我如何找出在Django测试中调用了哪个视图?
在我的测试中,我想确保中间件返回正确的视图,是否有内置工具可以做到这一点?
更新资料
我想做这样的事情:
from django.test import TestCase, Client
from my_app.views import my_view
c = Client()
response = c.get(url)
self.assertEqual(response.view, my_view)
到目前为止,我看到的唯一解决方案是使用模拟。我的意思是嘲笑我的观点并检查,
是否被调用。
最佳答案
如果我正确理解了这个问题,这就是我一直在完成的工作:
found = resolve('url path')
self.assertEqual(found.func, my_view)
对于基于类的视图:
found = resolve('url path')
self.assertEqual(found.func.__name__, my_view.as_view().__name__)
由哈里·珀西瓦尔(Harry Percival)和他的精彩著作提供:https://goo.gl/yhWRGC
关于python - 获取Django测试中使用的 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26883263/