1  为什么开发ZenData
2  ZenData数据生成工具简介
3  如何获得支持
4. 快速入门
4.1  安装部署
4.2  将ZenData加入$PATH系统环境变量中
4.3  命令行参数说明
4.4  命令行调用示例
4.5  內置数据定义示例
4.6  YAML定义语法总览
5. 用户指南
5.1. 数据定义语法
5.1.1  区间
5.1.2  步长
5.1.3  随机
5.1.4  重复
5.1.5  循环
5.1.6  循环支持区间
5.1.7  格式化
5.1.8  字面常量
5.1.9  前后缀
5.1.10  宽度
5.1.11  嵌套
5.1.12  嵌套字段递归
5.1.13  字段结果随机
5.1.14  文本文件数据
5.1.15  Excel数据查询
5.2. 內置数据定义
5.2.1  系列定义
5.2.2  实例定义
5.2.3  实例间无限级嵌套
5.3. 用户数据自定义
5.3.1  自定义Config
5.3.2  扩展现有定义
5.4. 数据定义引用
5.4.1  引用ranges系列
5.4.2  引用instances实例
5.4.3  多use&from联合引用
5.4.4  引用Config配置
5.4.5  引用yaml文件内容
5.4.6  全局from语句
5.5. 数据输出格式
5.5.1  文本格式输出
5.5.2  JSON格式输出
5.5.3  XML格式输出
5.5.4  SQL格式输出
5.6. ZenData命令详细介绍
5.6.1  Default配置覆盖
5.6.2  列出內置数据
5.6.3  查看內置数据
5.6.4  从SQL生成数据定义
5.6.5  清除数据前后缀
5.6.6  数据反向解析
5.7. ZenData文章生成器
5.7.1  中文词语基础数据
5.7.2  撰写文章
5.7.3  转换文章到YAML配置
5.7.4  从YAML配置生成新文章
5.8. ZenData服务接口
5.8.1  HTTP服务启动
5.8.2  HTTP服务调用
6. 内置数据一览
6.1  使用命令查看內置数据
6.2. 预置Excel数据
6.2.1  国家
6.2.2  地址
6.2.3  人名
6.2.4  颜色
6.2.5  中文词语
6.3  內置数据定义

ZenData数据生成工具简介

2019-10-23 11:54:20
Aaron Chen
2258
最后编辑:陈琦 于 2020-09-21 11:06:38
分享链接
摘要:ZenData使用YAML来作为数据类型配置文件实现了数据的生成和解析。ZenData可以用于手工测试场景下面测试数据的准备,也可以用于自动化测试脚本里面的数据生成和解析。还可以一键生成海量数据用于性能和压力测试。

一、ZenData的实现原理

ZenData使用YAML来作为数据类型配置文件。对于每一种类型的数据来讲,我们都可以将其拆分成若干的字段。比如我们要测试一个用户的订单表,会有订单的id,用户id或者账户名,订单的名称,订单的金额,订单的时间,订单状态等等字段。我们可以针对每一个字段配置其取值的范围。比如订单id,我可以定义为从1到10000,用户id可以是1-100。这样每一个字段都有了一个取值范围列表。当ZenData来生成数据的时候,从每一个字段里面依次取一个值,将其拼接在一起,就形成了一条记录。大家可以想象成每个字段都是一个转盘,按照自己的频率进行旋转,每一次旋转都从中取出一个值,和其他的字段进行组合。

上面说的是最基本的的工作原理,ZenData还提供了步长、随机、循环、引用等多种定义方式,我们会在接下来的手册里面展开讲。

二、ZenData的用途

ZenData主要两大功能:数据生成和数据解析。通过一个配置文件,可以使用ZenData生成您想要的各种数据。同样也可以对某一个数据文件,指定其数据类型定义的配置文件,完成到结构化数据的解析。

ZenData可以用于手工测试场景下面测试数据的准备,也可以用于自动化测试脚本里面的数据生成和解析。还可以一键生成海量数据用于性能和压力测试。

三、ZenData主要的特点

  1. 简单无依赖,只有一个可执行文件,即可满足命令行生成和HTTP接口两种数据生成服务。
  2. 使用配置文件来生成数据,使用人员不需要有开发知识,即可上手应用。
  3. 提供了功能强大的语法,分组、区间、步长、循环、随机、格式化和前后缀等,配置灵活性极强。
  4. 支持从文本文件中读取数据,方便用户对字段取值进行精确控制。
  5. 提供了Excel表格数据的标准SQL查询接口,使用更加灵活。
  6. 使用预制的序列(ranges)、实例(instances)、配置(config)对定义进行复用,以解决复杂数据格式的定义。
  7. 语法支持继承和扩展,为定义文件间的复用提供方便。
  8. 可以反向解析数据,可以对程序的输出进行解析,方便自动化测试脚本进行比对。
  9. 发行包內置了基础业务数据的定义文件(不断完善中)。
  10. 提供了HTTP接口数据生成服务,各种语言都可以方便调用。