我非常喜欢Ruby中的fakeweb在测试时用来伪造http请求的方式。是否有类似的库或Python的替代品?
答案 0 :(得分:3)
另见How can one mock/stub python module like urllib。建议Mox的答案看起来最像是fakeweb,但是Mox允许你创建任何模块的假版本,而不仅仅是urllib。
对于传入请求,如果您的Web框架使用WebOb(repoze.bfg,Pylons其他人),则可以使用webob.Request.blank
。
from webob import Request
r = Request.blank('/')
a_view_function(r)
答案 1 :(得分:2)
HTTPretty的工作方式与FakeWeb完全相同。 HTTPretty在套接字层中工作,因此它应该可以拦截任何python http客户端库。它针对urllib2,httplib2和请求
进行了战斗测试答案 2 :(得分:1)
我建议您为questions 1016765 how-to-use-cookielib-with-httplib-in-python中的HTTP请求生成虚假接口。