Mocking
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
这个指南是关于怎样为 datafetcher 提供 Mock data。这里有两个主要原因:
在开发中,提供 UI 团队可以使用的 datafetcher 样例数据,在 schema 设计阶段是非常有用的。
为 UI 团队撰写他们的测试,提供稳定的测试数据
可以提出这样一个参数,即这种 mock data 类型应该存在于 UI 代码中。毕竟是为了他们的测试。然而,通过将其拉入 DGS,数据的所有者可以提供可供许多团队使用的测试数据。这两种情况并不相互排斥。
在 DGS 框架中的 library 支持:
从 mocks 中生成静态数据
为简单类型(比如 String 字段)返回生成的数据
这个 library 是模块化的,因此您可以将其用于各种工作流和用例。
Mock 框架已经是 DGS 框架的一部分。您所需要提供的只是一个或多个 MockProvider
实现。MockProvider
是一个带有 Map<String, Object> provide()
方法的接口。Map
中的每个 key
都是[GraphQL] schema 中的一个字段,可以有好几层。Map
中的 value
是您希望为此键返回的任何 mock data。
创建一个 MockProvider
,为你在 中创建的 hello
字段提供 Mock 数据。
如果再次运行应用程序并测试 hello
查询,您将看到它现在返回 mock 数据。