SNS 和 SQS 的 boto python - 这些方法是同步的吗?

boto python for SNS and SQS - Are the methods synchronous?

我正在为一个项目做集成测试。部分测试用例涉及以下步骤:

  1. 创建 SQS 队列 X
  2. 订阅 SNS 主题 Y
  3. 检查 X 是否存在
  4. 检查 X 是否订阅了 Y
  5. 从 Y 取消订阅 X
  6. 检查 X 是否取消订阅 Y
  7. 删除 X
  8. 检查 X 是否不存在

我的测试用例通常运行良好,直到第 6 步检查失败。

我正在使用 sns.get_all_subscriptions_by_topic() 检查订阅是否存在,显然,此时我仍然可以找到 X 订阅了 Y。所以这让我怀疑整个库是不是异步的。如果是这样,我不确定我是否可以轻松地使用它进行集成测试。

不幸的是,boto API page 没有说明同步。

它可能与 boto 没有任何关系 - 许多 AWS 方法本身是异步的并且最终是一致的。

它似乎没有记录在案,但我在过去看到过几种 SQS 方法(例如,队列清除)的异步行为。