Мне очень нравится, как fakeweb в Ruby можно использовать для фальсификации http-запросов при тестировании. Есть ли подобная библиотека или альтернатива для Python?
См. Также Как можно смоделировать / заглушить модуль Python, например, urllib . Ответ, который рекомендует Mox , кажется наиболее похожим на fakeweb, но Mox позволяет создавать поддельные версии любого модуля, а не только urllib.
Для входящих запросов, если ваша веб-платформа использует WebOb ( repoze.bfg , Pylons другие), вы можете использовать webob.Request.blank.
webob.Request.blank
from webob import Request r = Request.blank('/') a_view_function(r)
HTTPretty работает точно так же, как FakeWeb. HTTPretty работает на уровне сокетов, поэтому он должен перехватывать любые клиентские библиотеки Python http. Это тестирование в битве против urllib2, httplib2 и запросов
Я рекомендую вам создать поддельный интерфейс к HTTP-запросу, как в вопросах 1016765, как использовать cookielib-with-httplib-in-python .