npm 包 graphql-schema-comparator 使用教程

阅读时长 3 分钟读完

GraphQL 是一种让前端和后端都十分喜爱的查询语言。如果你在前端上使用 GraphQL,那么你一定会涉及到 Schema。Schema 是定义 GraphQL 查询语句的结构的一种语言。然而,Schema 随着业务的变化而变化,这就带来了一系列的问题:如何记录 Schema 的变化?如何在迭代的过程中保证不出错?如何管理变化的历史?解决这些问题的一个良好的解决方案是使用 graphql-schema-comparator 这个 npm 库。

1. 安装

使用 npm 安装 graphql-schema-comparator。

2. 比较 schema

将两个 schemas 分别存放在文件中,然后使用下面的命令来比较它们:

比较结果会展示出两个 schemas 的差异。

3. 自动化

如果你需要在你的自动化测试中使用 graphql-schema-comparator,你可以使用以下的代码:

-- -------------------- ---- -------
----- -- - --------------
----- ----------------------- - -------------------------------------

----- --------- - --------------------------------------- --------
----- --------- - --------------------------------------- --------

----- ------ - ------------------------------------------------- -----------

-- ------------------------------ - -- -
  ------------------- ------- ------------
  --------------------- -----------
  --- ------ ------ -- ----------------------- -
    --------------------------------
  -
  ----------------
-

这个代码会比较两个文件 old_schema.graphqlnew_schema.graphql 中的 schemas,如果在新的 schema 中有破坏性变化,则会打印出错误并退出。

4. 结论

graphql-schema-comparator 并不是解决 schema 变更的唯一方式,但是是一个非常好的、易于使用的 npm 库。它可以帮助开发人员在变更时保证好的生产力和代码质量,同时也可以保持一个健康的 schema 历史。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066b5851ab1864dac66e18

纠错
反馈