IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> REST Assured 54 - What Is JSON Schema? -> 正文阅读

[大数据]REST Assured 54 - What Is JSON Schema?

REST Assured 系列汇总 之 REST Assured 54 - What Is JSON Schema?

JSON Schema

说到车,你会想象它的结构组成。例如:一辆车有4个轮子,一个车体,油缸,方向盘,座位等。这些组成任何车的基本结构。如果一个物体只有3个轮子,其它部分都满足前面我们说的基本结构,也不能称作是我们定义的这种结构的车。

当创建一个 Gmail 账号时,并非所有字段信息都是必须的。但是如果不填写某些必要信息,将会得到错误,账号不能创建成功。相似地,一个用来存储键值对数据的 JSON 也有结构,定义其允许的格式和字段,值等。这种结构就称为一个 JSON Schema。

一个 JSON Schema 是一个 JSON 文档,用来验证一个 JSON 对象的语法和语义。语法是验证一个 JSON 对象是否是一个有效的 JSON 对象。语义是验证一个有效的 JSON 对象是否包含所有必要的字段,值的格式,允许的值等。

根据 JSON Schema 官网定义,JSON Schema 就是一个词汇表,用来注释和验证 JSON 文档。

JSON Schema 例子:

{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$id": "http://example.com/example.json",
    "type": "object",
    "title": "The root schema",
    "description": "The root schema comprises the entire JSON document.",
    "default": {},
    "examples": [
        {
            "token": "abc123"
        }
    ],
    "required": [
        "token"
    ],
    "properties": {
        "token": {
            "$id": "#/properties/token",
            "type": "string",
            "title": "The token schema",
            "description": "An explanation about the purpose of this instance.",
            "default": "",
            "examples": [
                "abc123"
            ]
        }
    },
    "additionalProperties": true
}

上面是一个非常简单的 JSON Schema。关注一下关键字段 “required” 和 “properties“. 任意 JSON 对象基于这个 JSON Schema 都必须有一个 “token” 属性,且 “token” 字段值的类型是字符串。总之,出现在 “required” 数组中的字段,一个 JSON 对象都必须包含这些字段。“properties” 部分是用来定义这些字段的。

“additionalProperties” 字段表明是否允许其它额外的属性列在 “properties” 部分。

JSON Schema 是容易理解的,我还可以用它来验证一个属性的最大值 或 最小值 或 正则表达式。

可以通过 JSON Schema website 基于给定的 JSON 对象生成一个 JSON Schema,当然你也可以进行修改。

作为一个测试人员,我们必须掌握有关 JSON Schema 创建 的基本概念。对于自动化断言一个JSON request 和 response 是否满足期望是非常有帮助的。开发人员不是每次都会给你提供一个 JSON Schema,这种情况,你需要掌握如何创建 JSON Schema,就可以直接验证了。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-02 14:56:26  更:2021-10-02 14:58:52 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:28:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码