SNS 和 SQS 的 boto python - 这些方法是同步的吗?
boto python for SNS and SQS - Are the methods synchronous?
我正在为一个项目做集成测试。部分测试用例涉及以下步骤:
- 创建 SQS 队列 X
- 订阅 SNS 主题 Y
- 检查 X 是否存在
- 检查 X 是否订阅了 Y
- 从 Y 取消订阅 X
- 检查 X 是否取消订阅 Y
- 删除 X
- 检查 X 是否不存在
我的测试用例通常运行良好,直到第 6 步检查失败。
我正在使用 sns.get_all_subscriptions_by_topic() 检查订阅是否存在,显然,此时我仍然可以找到 X 订阅了 Y。所以这让我怀疑整个库是不是异步的。如果是这样,我不确定我是否可以轻松地使用它进行集成测试。
不幸的是,boto API page 没有说明同步。
它可能与 boto 没有任何关系 - 许多 AWS 方法本身是异步的并且最终是一致的。
它似乎没有记录在案,但我在过去看到过几种 SQS 方法(例如,队列清除)的异步行为。
我正在为一个项目做集成测试。部分测试用例涉及以下步骤:
- 创建 SQS 队列 X
- 订阅 SNS 主题 Y
- 检查 X 是否存在
- 检查 X 是否订阅了 Y
- 从 Y 取消订阅 X
- 检查 X 是否取消订阅 Y
- 删除 X
- 检查 X 是否不存在
我的测试用例通常运行良好,直到第 6 步检查失败。
我正在使用 sns.get_all_subscriptions_by_topic() 检查订阅是否存在,显然,此时我仍然可以找到 X 订阅了 Y。所以这让我怀疑整个库是不是异步的。如果是这样,我不确定我是否可以轻松地使用它进行集成测试。
不幸的是,boto API page 没有说明同步。
它可能与 boto 没有任何关系 - 许多 AWS 方法本身是异步的并且最终是一致的。
它似乎没有记录在案,但我在过去看到过几种 SQS 方法(例如,队列清除)的异步行为。