如何使用Hasura对微服务进行集成测试?

时间:2019-11-12 14:24:02

标签: testing hasura

我终于朝着微服务架构,尤其是3因子应用程序迈进了一步,我觉得很酷。

因此,我决定开始使用hasura来构建我的后端,因为它正在快速发展并且对事件系统感到疯狂。

但是,我已经面临着我的第一个难题:我希望后端获得认可。为此,我想对后端执行某种端到端调用。例如,我想在这样的验收测试中在我的hasura api上调用一个变异,并在运行测试方案之前将数据库恢复到其状态。

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

我知道在没有中间hasura引擎的情况下,如何使用纯postgres数据库来实现。事实是,现在我的验收测试正在调用无法使我无法直接访问postgres事务的变异,这使我没有明显的方法来将数据库恢复到运行测试方案之前的原始状态。

我尝试使用stellar,但效果并不理想。每当我运行新的场景时,我也可以重新创建数据库,但这效率很低。我读过有关hasura审核的信息,也许那是要走的路?您如何接受/集成测试您的hasura后端?

1 个答案:

答案 0 :(得分:0)

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