如何在Python单元测试中模拟外部服务器?

mir*_*soi 12 python unit-testing mocking

由于呼叫外部服务(Twitter,Facebook,Klout等),我有几个单元测试需要很长时间(分钟)

我想缓存这些服务的结果并透明地提供它们,对我当前的测试进行最小的更改.缓存键取决于URL,查询参数,标题等,因此它非常复杂.

最好的方法是什么?

Nou*_*him 9

您(应该)通常会使用某种适配器来连接这些外部服务模块.这些是您与外部世界的接口,可以根据场景进行模拟和假响应.

我已经尝试了一些模拟库,最后发现Mock是最适合我的.