news 2026/4/25 2:44:07

python接口自动化测试 | yaml数据驱动参数化,看完这一篇就够了

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python接口自动化测试 | yaml数据驱动参数化,看完这一篇就够了
前言

在yaml之前,程序大多使用json、xml、ini等格式进行数据的描述和传输,这些格式数据类型简单、可读性不好,yaml作为一种数据格式,但是可读性大大提高,方面人类直接编辑、查看里面的内容。

在实际测试过程中,测试一个接口往往不会像前面一个只有一个用例。如何在一个yaml里面写多个用例,并且执行呢?

接下来我们就来详细讲解一下什么是yaml。

一、YAML文件是什么

YAML是 “YAML Ain’t a Markup Language”(YAML不是一种标记语言)的递归缩写;

实际上YAML还是一种标记语言,只不过是更加聚焦于数据的标记语言(上面是大佬们的文字游戏);

YAML也是可以用来编写配置文件的语言,语法非常简洁和强大;

在自动化测试框架中,常应用于自动化测试过程,用来进行数据驱动的数据存储载体,如典型的httprunner。

二、YAML语法规则

1.大小写敏感

2.使用缩进表示层级关系

3.不允许使用 TAB 键来缩进,只允许使用空格键来缩进

4.缩进的空格数量不重要

5.使用”#”来表示注释

其中规则中的1、2、5有没有觉得和python类似

三、YAML文件支持的数据格式

对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)

数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)

纯量(scalars):单个的、不可再分的值

四、YAML文件编写示例
1、对象
name: 小王 age: 12 books: book1: 朝花 book2: 呐喊

使用冒号(:)表示键值对,同一缩进的所有键值对属于一个map

2、数组
- - A - B - C - - D - E - F

使用(- ) 表示数组,同一缩进的所有项属于一个数组

3、纯量
name: 'xiaoli' age: 26 weight: 57.30 isStudent: true address: ~ time: 2026-02-04t15:02:23.10-05:00 date: 2026-02-04

根据以上纯量的例子,由上往下,纯量包含:字符串 整数 浮点数 布尔值 Null(用~表示) 时间 日期
其中:用~表示null ; 时间、日期采用IS08601格式

4、对象嵌套数组
hobbys: - 'climb mountains' - sing - dance
5、数组嵌套对象
- id: 1 name: xiaowang - id: 2 name: xiaoli
五、YAML文件常用编写语法

在一个yml文件中,使用 — 来表示一段文档(或者一组配置)的开始,使用 … 来表示一段文档的结束。如果yml中只有一组配置,则可以省略掉 —

使用 – 来表示单个的列表项

使用 : 来表示键值对

用 ~ 表示null

使用 ! 和 !! 来做强制类型转换

单引号会将字符串里面的特殊字符转义为字符串处理

双引号不会转义字符串里面的特殊字符,特殊字符作为本身想表示的意思

使用|标注的文本内容缩进表示的块,可以保留块中已有的回车换行

使用+表示保留文字块末尾的换行

使用-表示删除字符串末尾的换行

使用 > 标注的文本内容缩进表示的块,会将块中回车替换为空格,最终连接成一行

使用true或false表示布尔值

使用 & 定义数据锚点(即要复制的数据)

使用 * 引用锚点数据(即数据的复制目的地)

ps: 语法比较多,大家当参考资料看吧,到时有更多用上了,我再补充

最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 1:20:22

考研408--数据结构--day5--栈与队列的应用

(以下内容全部来自上述课程) 目录栈1. 括号匹配问题1.1 概述1.2 算法演示1.3 算法实现1.4 小结2. 表达式求值问题2.1 引言2.2 简述2.3 中转后(手算)2.4 后缀表达式的计算2.4.1 手算2.4.2 机算2.5 中转前(手算&#xff…

作者头像 李华
网站建设 2026/4/16 22:40:49

中老年线上学习发展:兴趣岛“内容+服务+空间”融合赋能下的体验升级

从早期通过新媒体传播兴趣知识的探索者,到确立“线上与线下融合的成人兴趣学习平台”的定位,兴趣岛完成了一次从内容提供者到深度服务生态构建者的战略演进。截至目前,兴趣岛App注册用户已突破5000万,是中国中老年第一大兴趣学习平…

作者头像 李华
网站建设 2026/4/23 22:42:24

通义发布Qwen3-Coder-Next:面向自主Coding Agents的开源权重模型

通义实验室宣布正式推出 Qwen3-Coder-Next。作为基于 Qwen3-Next 构建的最新一代开源权重模型,它专为驱动下一代自主 Coding Agents 而设计,旨在以极高的效率规划并执行复杂的、长时程的编程任务。Sorry, your browser doesnt support embedded videos. …

作者头像 李华
网站建设 2026/4/24 8:46:25

模拟太阳光条件下太空光伏电池的光电性能测量

三结砷化镓(GaInP/InGaAs/Ge)光伏电池具备 300~1800nm 宽光谱响应、超 30% 光电转换效率及优异抗辐照性,是航天器在轨运行的核心电源。其光电性能需在 AM0标准条件下标定,以匹配太空环境的太阳辐照特性。地面太阳光模拟器法可控性…

作者头像 李华
网站建设 2026/4/20 15:44:06

基于Spring boot的农产品销售小程序毕业论文+PPT(附源代码+演示视频)

文章目录一、项目简介1.1 运行视频1.2 🚀 项目技术栈1.3 ✅ 环境要求说明1.4 包含的文件列表前台运行截图后台运行截图项目部署源码下载一、项目简介 项目基于微信小程序,使用微信原生开发框架或uni-app框架开发。基于Springboot的农产品销售小程序 随…

作者头像 李华