在AWS AppSync中进行单元测试GraphQL模式/查询吗?

时间:2019-01-04 21:05:46

标签: graphql aws-appsync

我有一个简单的问题:是否有一种方法/程序/方法来创建单元测试,以测试在AWS AppSync上生成的API网址,以验证所创建的GraphQL模式,查询,变异等的有效性?

2 个答案:

答案 0 :(得分:2)

有一个开源AppSync Serverless插件,具有离线模拟器支持。您可能会发现它很有用:https://github.com/sid88in/serverless-appsync-plugin#offline-support

另一个好的建议是拥有两个单独的AppSync API。一种API托管您的生产流量。另一种是在变更投入生产之前对其进行测试。如果您使用 Cloudformation (强烈建议)来管理基础架构,则这将变得非常容易。

如果要验证API是否定期(每分钟左右)运行,可以创建如下所示的canary:

  1. 创建按计划运行的Lambda函数。此lambda函数将发出各种GraphQL请求。它可以向CloudWatch发出成功/失败指标。
  2. 设置CloudWatch警报,以便在成功/失败指标异常时通知您。

有关金丝雀的用例,请参见:

https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/RunLambdaSchedule.html https://docs.aws.amazon.com/lambda/latest/dg/with-scheduled-events.html

答案 1 :(得分:0)

还有应该有助于测试 appsync 的 amplify amplify-appsync-simulator 包,但没有关于如何使用它的文档。它由 serverless-appsync-simulator Michael 自己编写和放大使用。