JSON LAB数据处理案例库
测试结果 · JSON 处理案例
测试结果中的 passed 仅是记录值,不证明这里执行过真实业务接口。示例用于学习如何提取和对比测试报告。
$
JSONPath 字段提取
8 个案例- 测试结果:提取全部 caseIdJSONPath 字段提取
- 测试结果:提取全部 nameJSONPath 字段提取
- 测试结果:读取第一项 assertionCountJSONPath 字段提取
- 测试结果:按数组顺序提取 suiteJSONPath 字段提取
- 测试结果:提取嵌套 evidence 对象JSONPath 字段提取
- 测试结果:读取 summary.total 汇总数JSONPath 字段提取
- 测试结果:区分明确的 null 和字段缺失JSONPath 字段提取
- 测试结果:查询尚未提供的 nameAliasJSONPath 字段提取
{}
Schema 数据约束
8 个案例- 测试结果:检查 caseId 必须存在Schema 数据约束
- 测试结果:限制 name 不能为空字符串Schema 数据约束
- 测试结果:限制 assertionCount 为非负整数Schema 数据约束
- 测试结果:检查 passed 的布尔类型Schema 数据约束
- 测试结果:约束 suite 的枚举值Schema 数据约束
- 测试结果:拒绝合同以外的额外字段Schema 数据约束
- 测试结果:用本地 $ref 复用 assertionCount 规则Schema 数据约束
- 测试结果:检查 caseId 数组没有重复值Schema 数据约束
±
JSON 结构对比
8 个案例- 测试结果:发现新增的 suiteNoteJSON 结构对比
- 测试结果:发现被删除的 passedJSON 结构对比
- 测试结果:识别 assertionCount 从数字变为字符串JSON 结构对比
- 测试结果:定位 suite 的值变化JSON 结构对比
- 测试结果:解释 cases 首部插入导致的多处差异JSON 结构对比
- 测试结果:确认对象字段换序不会产生差异JSON 结构对比
- 测试结果:识别 nameNote 从 null 变为缺失JSON 结构对比
- 测试结果:读取包含斜杠和波浪线的字段路径JSON 结构对比
↔
JSON 整理与类型生成
8 个案例- 测试结果:将接口响应整理为两空格缩进JSON 整理与类型生成
- 测试结果:压缩 JSON 并保留字段和值JSON 整理与类型生成
- 测试结果:递归排序对象字段并保留数组顺序JSON 整理与类型生成
- 测试结果:把中文字符串写为 Unicode 转义JSON 整理与类型生成
- 测试结果:把 JSON 文本转为可嵌入的转义片段JSON 整理与类型生成
- 测试结果:还原一层 JSON 字符串转义JSON 整理与类型生成
- 测试结果:从接口样本生成 TypeScript 类型草稿JSON 整理与类型生成
- 测试结果:从样本起草 Draft-07 SchemaJSON 整理与类型生成
assertionCount 是示例断言数,不能直接当作用例数或覆盖率。 所有案例均包含原例、对照输入及实际引擎结果。