【问题标题】:How do I write tests for torando handler wrapped with stream_body decorator?如何为使用 stream_body 装饰器包装的 torando 处理程序编写测试?
【发布时间】:2017-02-01 10:06:40
【问题描述】:

我有一个异步处理程序,用"stream_body" decorator 包裹,用于接收大文件并以类似于this example 的方式读取它们。但是,我不明白,如何在 unittest 中测试此功能,因为这需要异步客户端。

【问题讨论】:

    标签: python unit-testing tornado


    【解决方案1】:

    您可以测试使用stream_request_body 的处理程序,而客户端中没有任何特殊功能。例如,this test in Tornado itself 使用普通请求测试 stream_request_body 处理程序(恰好使用 AsyncHTTPClient 发送,因为 AsyncHTTPTestCase 就是这样做的,但原则上可以使用另一个线程中的同步客户端完成)。

    如果您想测试处理程序的流式传输属性,那么您可能需要更灵活的客户端。例如,AsyncHTTPClient 中的a test that uses body_producer 可以控制块的发送,而无需尽可能快地上传所有内容。

    【讨论】:

      猜你喜欢
      • 2014-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-30
      • 2019-07-02
      • 2019-07-09
      • 2017-08-27
      • 1970-01-01
      相关资源
      最近更新 更多