Smart mock 会根据你的 API 规范自动生成真实的 API 响应,无需额外配置。这个智能模拟系统会分析你的 schema,并立即生成合适的测试数据。Smart Mock 的工作方式#
Smart mock 从三个来源生成数据,并按以下优先级应用:| 优先级 | 来源 | 描述 |
|---|
| 1 | Mock 字段 | 响应规范属性中的自定义值或表达式 |
| 2 | 属性名称匹配 | 基于属性类型和名称自动生成数据 |
| 3 | JSON Schema | 受 schema 规则约束的基于类型的默认值 |
基于名称的自动模拟#
Smart mock 的智能算法会将属性名称与内置规则进行匹配,并根据类型和名称生成符合上下文的数据。内置匹配规则#
在 Settings → General Settings → Feature Settings → Mock Settings 中查看和管理内置规则。这些规则使用通配符或正则表达式模式来匹配属性名称:创建自定义规则#
如果内置规则无法满足你的需求,可以创建自定义匹配规则:1
导航到 Settings → General Settings → Feature Settings → Mock Settings
匹配你的自定义条件的属性将根据指定的 mock 表达式生成数据。如果属性名称不匹配任何规则,Smart mock 会根据属性的数据类型生成默认值。
Mock 字段优先级#
在响应属性的 mock 字段 中指定的值会覆盖基于名称的匹配。Faker 语句:用于生成多样化数据的动态值表达式
JSON Schema 约束#
所有生成的 mock 数据都会遵循 API 规范中定义的 JSON Schema 约束。Schema 约束示例#
| Schema 约束 | 示例 | 结果 |
|---|
| 字符串长度 | 长度为 3-5 的属性 name | 自动模拟的 "Richard" 变为 "Richa" |
| 枚举值 | 带有枚举 ["sold", "pending", "available"] 的属性 status | 返回这三个值中的一个 |
| 数字范围 | 带有 min/max 边界的整数 | 生成的值保持在范围内 |
| 数组长度 | 带有 min/max 元素数量的数组 | 生成的数组遵循数量限制 |
所有属性设置都会反映在最终的 mock 数据中,确保响应始终符合你的 JSON schema 规范。
本地化支持#