YAML到底是什么?

YAML 是 “YAML Ain't a Markup Language”(YAML 不是一种标记语言)—— 设计时的本意

YAML 是 “Yet Another Markup Language” (仍是另外一种标记语言) —— 出来后的实际

YAML 比较适合用来表达层次结构式(hierarchical model)的数据结构。生成的文件后缀为 .yml。在 HttpRunner 中,使用 YAML 编写测试用例比用 JSON 要更加简便和快捷。

YAML 的语法规范:

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格
  • 缩进的空格数不重要,只要相同层级的元素左对齐即可
  • '#'表示注释

编写测试用例时,主要用到以下两种 YAML 数据类型:

  • 对象:键值对的集合,等价于 python 中的 dict。如:“ name: 张三 ”
  • 数组:一组按次序排列的值,等价于 python 中的列表(list)。

对象举例

对象写法-1:

name: 张三

对象写法-2:

 student:     name: 张三     age: 20

对象写法-3:

student:  { name: 张三,  age: 20 }

数组举例

数组写法-1

student: [ 张三, 李四, 王五 ]

数组写法-2

student:     - 张三     - 李四     - 王五

下面我们将上一节的 JSON 格式的测试用例改写为 YAML 格式:

  • 去掉所有表示对象的大括号,以相同的空格数量控制缩进
  • 将列表中的列表项,分别设置为以短横线开头
- config:    name: 测试用例:测试百度- test:    name: 测试步骤-1:打开百度首页    request:      url: https://www.baidu.com      method: GET    validate:      - eq: [status_code, 200] 

执行该 YAML 格式测试用例,成功。结果与执行 JSON 格式测试用例没有任何区别。

执行 YAML 格式测试用例,成功

最后我们再对比着看一下 JSON 和 YAML 两种格式的区别:

  • JSON 可以用TAB进行缩进,需要使用括号符号,格式显得复杂
  • YAML 必须用空格进行缩进,可以不使用括号符号,格式更加清晰

JSON 格式和 YAML 格式测试用例的对比

yaml 数组_接口测试:A01_HttpRunner基础_05_YAML格式测试用例相关推荐

  1. yaml 数组_使用 YAML 保存游戏数据 !

    本文转自Unity Connect博主 超级汽水 为什么是 YAML ? 首先我们来看看什么是YAML : 官网上作者对自己的定义 YAML 不是标记语言. YAML 是针对所有编程语言的人性化数据序 ...

  2. doctrine find的对象转换成数组_「ES6基础」Array数组的新方法(上)

    在日常工作中我们经常会与数组打交道,因此需要熟练掌握数组操作的相关方法,ES6中关于数组的操作,又给我们带来了哪些惊喜呢,Array数组操作又添加了哪些新方法? 本篇文章将从以下几个方面进行介绍: A ...

  3. java字符字节数组_【JAVA基础】字符数组与字节数组的区别

    String.getBytes()和String.tocharArray(),字节数组和字符数组的区别 String.getBytes()是将字符串转化为一个字节数组.而String.toCharAr ...

  4. python json数据格式数组内元素递增赋值_利用Python实现JSON格式数据的编码与解码操作...

    导读 JSON (全称:JavaScript Object Notation )是一种轻量级的数据交换格式,所谓的轻量级,是与 XML 数据结构相比而言的,在描述相同的数据下,JSON 所需的字符比X ...

  5. Java基础语法之变量、运算符、流程控制、数组和方法等基础语法

    变量.运算符.流程控制.数组和方法等基础语法.Java程序的执行流程,符合Java语法规则的程序. 1.1.1 Java初识 对Java进行简单介绍,Java程序如何执行,以及Java程序的结构. J ...

  6. C++语言程序设计视频教程_清华大学_郑莉(基础篇+进阶篇)

    C++语言程序设计视频教程_清华大学_郑莉(基础篇) 第一章:绪论 1.1 导学 1.2 计算机系统简介 1.3计算机语言和程序设计方法的发展 1.4 面向对象的基本概念 1.5 程序的开发过程 1. ...

  7. 随心测试_软测基础_004职责与质量

    接上篇续,依据_软测基础体系:<依据不同的测试对象,选取适合的方法,按照设计的流程完成测试工作,检验整个过程是否达到测试的目的>."学以致用",实践于工作职责 常见面试 ...

  8. JavaScript 数组拼接打印_JavaScript数组_创建数组_一维数组_length(二十三)

    目录: 1.什么是数组 2.创建数组方式 3.一维数组和length 一.什么是数组 数组对象的作用是:使用单独的变量名来存储一系列的值. 通俗理解:如果把声名变量来比做小轿车的话,那么数组就是高铁, ...

  9. 想要专升本你不得不看的全干货_吐血整理_专升本_计算机文化基础( 十 四 )

    大家好,我是阿Ken.很快就要整理完第三章了~ 对于专升本_计算机文化基础我已经在博客里整理了已经一半多了,希望能够在我整理后能够帮助其他的小伙伴,会一直整理完所有的专升本_计算机文化基础的笔记,感兴 ...

最新文章

  1. Facebook开源工具包LASER,支持93种语言
  2. 在emu8086中学习几个汇编语言显示字符串的小例子
  3. APPSERV下安装pear db和auth
  4. VTK:图片之ImageCityBlockDistance
  5. mysql的innodb如何定位锁问题_mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?...
  6. JAVA语言基础-面向对象(IO:IO字符流、递归)
  7. CentOS7安装 MySQL主从集群
  8. 【python简洁之道】-----1. 注释规则
  9. 4月第2周安全回顾 微软发布4月补丁 新僵尸网络出现
  10. ETERM航班销售控制指令
  11. 计算机玩游戏重启,为什么我的电脑玩游戏的时候会不定时的自动重启?
  12. 【P4lang】P4数据平面编程实验basic_tunnel
  13. 达梦数据库服务启动的三种方式
  14. 《黑白团团队》第八次团队作业:Alpha冲刺 第三天
  15. 数据集制作之xml文件转化为csv
  16. cas66-71-7|1,10-菲啰啉有机配体/ 1,10-Phen/邻菲啰啉/邻二氮杂菲
  17. 各个 .NET 平台的 UI 框架比较
  18. MARG航姿系统的基本理论及工作原理
  19. css 视频播放列表,jquery结合CSS实现的多样式多视频列表连播效果源码
  20. [C语言]ternary conditional operator (三目运算)

热门文章

  1. cmd长ping记录日志和时间_Gin 框架系列 — 路由中间件:日志记录
  2. 在布局空间标注的尺寸量不对_CAD图纸中标注值和实际测量值不一样怎么回事?...
  3. python代码块注释快捷键_pycharm默认注释与快捷键功能
  4. SAP 电商云 Spartacus UI 同 SAP Customer Data Cloud 集成运行时的 api
  5. SAP CRM呼叫中心里的事件注册机制
  6. SAP ERP里如何创建一个新的material类型
  7. when is completed field filled in the backend
  8. SAP cloud platform + 504 gateway time out Cloud connector
  9. nodejs库express是如何接收inbound json请求的
  10. jMeter debug postprocessor的用法