我有一个定义request.foo的中间件函数。我要测试的功能取决于从中间件定义的foo。由于中间件不在测试期间运行,我该如何测试所说的功能?

确实应该有一个接受请求,按顺序通过所有中间件运行请求,然后吐出最终请求的功能(就像传递到 View 时一样)。是否存在这样的功能?

我可以手动调用中间件功能,但这似乎是一种hack。如果被测中间件依赖于另一个中间件怎么办?我会遇到“中间件 hell ”。



最佳答案

我已经看过您的“手动”解决方案,但是建议您考虑使用此处描述的测试客户端:

http://docs.djangoproject.com/en/1.2/topics/testing/#testing-tools

关于中间件依赖性,您可以考虑模拟该中间件。

关于django::在测试中调用中间件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4310696/

10-15 23:35