测试与外部服务的连接

Testing connectivity with external services

我正在编写一个连接外部服务(Facebook、Twitter、SMS 服务...)的应用程序。其中一些收取发送和接收消息的费用。

如何为我的功能测试模拟这些服务? (不想使用真实的东西,而是模拟协议)。是否有通用工具(最好 opensource/free)?

最佳解决方案取决于您的产品,但一般来说,如果您不想实际使用测试中的这些服务,您应该以某种方式复制这些服务的响应。

例如,您可以仅发送一次测试请求以从服务获得真正的响应,并以适合您的格式缓存整个响应,然后编写一个简单的 Mock/Test 包装器来使用这个缓存的响应而不是实际与服务通信。