1  为什么开发ZenData
2  ZenData数据生成工具简介
3  如何获得支持
4. 快速入门
4.1  安装部署
4.2  将ZenData加入系统环境变量中(可选)
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  字段结果随机
5.1.16  文本文件数据
5.1.17  Excel数据查询
5.1.18  时间表达式
5.1.19  值表达式
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  多froms联合引用
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.5.5  直接插入数据到MySQL
5.5.6  CSV格式输出
5.5.7  Excel格式输出
5.5.8  ProtoBuf格式输出
5.6. ZenData命令行详解
5.6.1  Default配置覆盖
5.6.2  多配置文件新语法
5.6.3  列出內置数据
5.6.4  查看內置数据
5.6.5  从SQL生成数据定义
5.6.6  从数据库表结构生成数据定义
5.6.7  清除数据前后缀
5.7. ZenData文章生成器
5.7.1  中文词语基础数据
5.7.2  转换文章到YAML配置
5.7.3  文章格式语法介绍
5.7.4  从YAML配置生成新文章
5.8. ZenData客户端
5.8.1  Web接口调用
5.8.2. 数据提供者示例
5.8.2.1  TestNG数据提供者示例
5.8.2.2  PHPUnit数据提供者示例
5.8.2.3  PyUnit数据提供者示例
5.8.3. Web数据管理工具
5.8.3.1  关于客户端
5.8.3.2  加载已有数据文件
5.8.3.3  管理我的数据
5.8.3.4  管理內置数据
5.8.3.5  数据设计页面
5.8.3.6  数据区间编辑
5.8.3.7  数据引用编辑
5.9  ZenData自动升级
6. 内置数据一览
6.1  使用命令查看內置数据
6.2. 预置Excel数据
6.2.1  国家
6.2.2  地址
6.2.3  人名
6.2.4  颜色
6.2.5  中文词语
6.2.6  城市区号
6.2.7  公司名称
6.2.8  成语
6.2.9  歇后语
6.2.10  古诗
6.2.11  歌曲
6.2.12  玩笑
6.2.13  动植物
6.2.14  食物
6.2.15  水果
6.3  內置数据定义

为什么开发ZenData

2020-08-20 09:21:59
王春生
34709
最后编辑:陈琦 于 2020-09-21 14:55:50
分享链接
摘要:DevOps时代下面对自动化测试的要求越来越高,但如何能够将自动化测试规模化、工程化是每一个团队都会面临的巨大挑战。在这个挑战中,测试数据的生成、维护、解析又是重中之重。

一、时代背景

最近几年DevOps概念越来越火,各种DevOps平台也如雨后春笋一样涌现。但大家往往把重点放在在工具链的搭建上,而忽略软件研发最重要的本质。工具链搭建是容易的,有各种的开源软件可以满足需求。但工具链搭建起来之后应该怎么应用呢?DevOps是希望可以通过持续集成和持续交付来实现快速的响应,但这里面有一个前提,就是质量必须要保障。如果没有质量,持续集成和交付都是空谈。如何保证质量呢?就必须要上自动化测试。

二、存在问题

自动化测试无论单元测试、接口测试、功能测试都会面临一个挑战,即如何能够做到大规模、工程化的自动化测试。这里面会牵扯到很多方面的技术:测试环境、测试手段、测试资源、测试管理等等,但这里面最最重要的一环是测试数据的管理。

如果测试数据无法做到灵活、大规模的管理,那么自动化测试就始终无法做到规模化,无法起到快速验证、快速集成、快速交付的目的。

三、目前解决方案

目前测试数据是如何来维护的呢?绝大部分的团队还是停留在手工维护阶段。手工造数据,手工维护,成本之高,可想而知。个别有能力的测试人员,会自己写点脚本来生成数据。个别有开发资源的大厂,则自己组建团队来做专门的数据工厂。这些方案都不具备通用性,成本也极其高昂。

四、为什么来开发ZenData

业内研究理论方法的专家老师有很多,但提供落地工具的不多。我们经过讨论之后,觉得来开发一款所有人都可以使用的通用的测试数据生成工具,于是就有了ZenData这样一款测试数据生成工具。

ZenData则通过YAML文件,定义了一种简单的数据类型描述语法。使用者不需要对技术有过多了解,通过定义简单的字段取值列表、前缀后缀等配置,即可实现测试数据维护的目的。简洁、高效、灵活,是做单元测试、接口测试、功能自动化测试、性能测试、压力测试、打桩mock的有力帮手。

ZenData通过简单的range定义实现了区间、步长、随机、引用、重复、SQL查询等方式,通过简单的规则可应对各种变化。ZenData只有一个可执行文件,支持HTTP模式,还可以对数据进行反向解析,可以输出txt、json、xml、sql等多种格式。

评论列表
2022-10-27 10:40:40
zd打开闪退
陈琦 2022-11-03 08:10:12
请在命令行使用,双击不会有反应。
陈老师 2021-10-11 22:28:24
请问有没有pdf格式文档呢?公司内部网络访问不了外网,需要每一个截图带到公司很不方便
陈琦 2022-07-22 10:12:10
加我微信aaronchen2k,我转换下给你。
2021-06-02 11:10:54
在Linux安装了zendata,想生成一下格式的数据集,请问应该怎么配置yaml

2 1
4 1
1 2
6 3
7 3
7 6
6 7
3 7
陈琦 2021-08-09 07:38:22
你发的数据首先需要整理出规律
MyIdol-D.Wad3???? 2021-05-20 16:32:02
web服务启动 我怎么修改以本地ip启动,不然默认的ip,我其他机器无法访问
陈琦 2021-08-09 07:40:13
使用-b参数指定IP地址
1/1
发表评论
评论通过审核后显示。