为什么开发ZenData

2020-08-20 09:21:59    王春生    49881

一、时代背景

最近几年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