场景:

创建订单并支付,会奖励给用户积分,奖励积分的数据会入库,我需要拿到这个数据进行断言。但是从接口请求开始到数据入库可能会耗时 5 秒左右。接口自动化时这段时间要做等待。

思考:

1.异步的方式应该不行,我需要拿到数据进行断言。
2.同步的话还需要根据不同场景下数据的入库时间做等待。(比如创建订单生成的奖励积分数据入库需要 5 秒,退换货生成的库存变更数据入库只需要 3 秒)
3.如果是轮巡的方式,查到数据就返回,那只能保证拿到数据。因为数据入库之后还会发生变更。(比如保险订单的投保状态一开始入库时是待投保,等待第三方接口返回投保结果后,再更新状态为投保成功或投保失败。但我拿到的数据是待投保状态)

问题:

这种场景下的数据库数据的查询断言怎么处理比较好?或者这种等待应该怎么去做比较优雅?


↙↙↙阅读原文可查看相关链接,并与作者交流