3

我正在寻找说明如何对使用twisted.web.client.Agent 发出HTTP 请求的代码进行单元测试的提示或示例。

是否可以在测试中使用真正的代理并将其配置为使用 StringTransport 连接到假 HTTP 服务器(没有真正的 TCP 连接)?

还是模拟出代理并将模拟注入使用代理的类更好?

4

1 回答 1

4

当然可以使用真实的Agent. Agent您必须使用反应器作为第一个参数来构造实例;因此,您可以提供一个反应器,例如MemoryReactor. 尽管这是了解正在做的事情的一种非常方便的方法Agent,但它实际上主要用于测试Agent自身。注入一个假Agent的很多时候是一条更容易的路线,因为它的 api 既浅(几乎所有东西都通过Agent.request并且简单(它返回一个IResponse

于 2013-08-06T12:02:34.940 回答