随着 GraphQL 在现代 Web 开发中的普及,如何测试 GraphQL 查询和变异代码变得越来越重要。Jest 是一个功能强大且易于使用的 JavaScript 测试框架,它可以帮助我们针对 GraphQL 进行编写测试用例。本文将介绍如何使用 Jest 进行 GraphQL 测试,并提供实际样例和指导意义。
环境设置
在开始测试 GraphQL 之前,我们需要安装和配置一些工具和库。我们可以使用 npm 进行安装:
--- ------- ---------- ---- ------- ---------------
Jest 是一个现代化的 JavaScript 测试框架,它提供了一套完整的测试功能,包括断言、测试运行、Mock/Stub 等功能。GraphQL-request 是一个用于发出 GraphQL 查询的库。GraphQL 则是我们用来定义查询和变异类型的语言。
编写测试用例
我们可以创建一个单独的测试文件来编写我们的测试用例,如下所示:
----- - ---------------------- ------- - - ------------------- ----- - ---------------- - - --------------------------------- ----- - -------------------- - - --------------------------------- ----- -------- - - ---- ----- - ------ ------- - -- ----- --------- - - ------ - ------ -- -- ------ -------- -- -- ----- ------ - ---------------------- --------- --------- --- ----------------------- -- -- - ------------- ------ --------- ----- -- -- - ----- - ----- - - ------------------ ------ --- ----- - ---- - - ----- ------- ------ -- ----- -- --- --------------------------------- --------- --- ---
在此示例中,我们定义了一个简单的 GraphQL 查询,该查询返回字符串“Hello world!”。我们使用 createTestClient 从 Apollo Server 中创建一个测试客户端,该客户端允许我们发送 GraphQL 查询到我们定义的 schema 上。
运行测试用例
一旦我们写好了测试用例,可以运行以下命令来运行测试:
--- ----
Jest 将在测试文件夹中查找所有名称类似于 *.test.js 或 *.spec.js 的文件,并运行测试用例。如果所有测试用例都通过,则 Jest 输出结果为绿色。如果其中一个或多个测试用例已失败,则结果为红色。
我们可以使用 --watchAll 选项来启用 Jest 的监视模式:
--- ---- -- ----------
这将使 Jest 在我们修改和保存测试文件时自动重新运行测试。
结论
使用 Jest 测试 GraphQL 很简单。在本文中,我们描述了如何使用 Jest 进行 GraphQL 测试,并提供了示例代码和指导意义。Jest 是一个强大的测试框架,它提供了完整的测试功能,能够满足我们的 GraphQL 测试需求。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/67372ef5317fbffedf08b14a