如何收集数据以异步代码进行测试

时间:2019-09-23 15:16:16

标签: asynchronous sqlalchemy pytest

我正在为项目编写后端(主要是业务逻辑)的端到端测试(Python,pytest,sqlaclhemy)。 同步代码-到目前为止,还不错: 我提出要求。后端就是它的工作。我正在收集响应和数据库数据。然后做一些断言。

但是,由于我的项目变得更加异步,所以我不能这样做: 我向后端提出请求,它返回给我响应。然后,后端开始工作。 因此,我没有任何事件可以告诉我后端已完成工作。

因此,我该怎么做: 我明确轮询数据库以获取测试所需的值。 我认为这是错误的。

一些思考如何解决问题的方法:

  1. ORM事件-由于我的测试运行程序(pytest),我无法这样做。 它会在事件出现之前终止测试功能,并且功能将变为 调用。
  2. 回调-同样,pytest无法识别测试     函数,如果它们将作为回调。

因此,问题在于如何同时利用异步代码和端到端测试。 这是一个理论上的问题,但是您对此的任何想法都是非常有价值的。

0 个答案:

没有答案