【问题标题】:How to perform integration tests on micro-services using hasura?如何使用 hasura 对微服务进行集成测试?
【发布时间】:2020-03-08 06:37:22
【问题描述】:

我终于朝着微服务架构迈出了一步,尤其是我觉得很酷的三要素应用程序。

因此,我决定开始使用 hasura 构建我的后端,因为它速度极快,并且对事件系统非常着迷。

但是,我已经面临我的第一个难题:我希望我的后端能够被接受。为此,我想对我的后端执行某种端到端调用。例如,我想在这样的验收测试中调用我的 hasura api 上的突变,并在运行测试场景之前将数据库恢复到其状态。

在这种情况下,最佳做法是什么?如何将数据库回滚到就在调用突变之前?

我知道在没有中间 hasura 引擎的情况下,我将如何使用纯 postgres 数据库来做到这一点。问题是现在我的验收测试正在调用突变,这些突变不能让我直接访问 postgres 事务,这让我没有明显的方法可以在测试场景运行之前将我的数据库恢复到其原始状态。

我尝试使用stellar,但效果不佳。我也可以在每次运行新场景时重新创建数据库,但这会非常低效。我读到了hasura审计,也许这就是要走的路?您如何接受/集成测试您的 hasura 后端?

【问题讨论】:

  • 也许你可以更高效一步,只截断相关的表? (而不是重新创建数据库)

标签: testing hasura


【解决方案1】:

目前,我只能提供部分答案。稍后我可能会想出示例代码。这样做的方法是在 websockets 上使用 graphql 事务,如 here 所述。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-10
    • 2016-01-25
    • 2019-11-02
    • 1970-01-01
    • 1970-01-01
    • 2018-06-11
    • 1970-01-01
    • 2022-01-07
    相关资源
    最近更新 更多