内容简介:ZenData2.2版本发布,优化了多处数据定义语法,新增Uuid格式数据生成,增加对Mysql数据库字段定义的支持. 2.2版更新内容 从SQL生成数据定义时,增加了对MySQL字段类型的支持,如longtext、int等; 新增时间表达式,...
ZenData2.2版本发布,优化了多处数据定义语法,新增Uuid格式数据生成,增加对 Mysql 数据库字段定义的支持.
2.2版更新内容
-
从 SQL 生成数据定义时,增加了对MySQL字段类型的支持,如longtext、int等;
-
新增时间表达式,如year(Y),month(M),day(D),week(w),hour(h),minute(m);
-
优化UUID数据生成,使用fomat:"uuid(-)"函数表达式;
-
服务请求模式下,去掉生成临时数据文件的步骤,提高并发性能;
-
修复Use属性下,无法解析多个Instances的问题;
-
修复loop区间生成的数据的问题;
-
其他一些问题的修复。
ZenData用途
ZenData主要两大功能:数据生成和数据解析。通过一个配置文件,可以使用ZenData生成您想要的各种数据。同样也可以对某一个数据文件,指定其数据类型定义的配置文件,完成到结构化数据的解析。
ZenData可以用于手工测试场景下面测试数据的准备,也可以用于自动化测试脚本里面的数据生成和解析,还可一键生成海量数据用于性能和压力测试。
ZenData特性
-
简单无依赖,只有一个可执行文件,即可满足命令行生成和HTTP接口两种数据生成服务;
-
使用配置文件来生成数据,使用人员不需要有开发知识,即可快速上手应用;
-
提供了简明、强大的数据定义语法,如分组、区间、步长、循环、随机、格式化、前后缀、函数和表达式等,配置灵活、扩展方便;
-
支持从文本文件中读取数据,方便用户对字段取值进行精确控制;
-
提供了Excel表格数据的标准SQL查询接口,数据维护和萃取更加灵活;
-
使用预制的序列(ranges)、实例(instances)、配置(config)对定义进行复用,以解决复杂数据的定义;
-
语法支持继承和扩展,为数据定义文件间的复用提供方便;
-
支持文本、JSON、XML、 CSV、SQL 、Excel、ProtoBuf多种输出格式;
-
可反向解析文章生成YAML配置模板;內置互联网黑话中文词库,文章创作方便而又有趣;
-
可反向解析二维表格形式的数据,生成结构化数据,方便用于自动化测试脚本中的验证点比对;
-
发行包內置了常见的基础业务数据的定义文件;
-
提供了HTTP接口形式的数据生成服务API,各种语言都可以方便调用;
-
內置Web版设计工具,减缓数据定义语法的学习曲线,数据管理和创作更高效。
2.2版下载地址
生成时间格式数据
数据定义
fields:
- field: date
from: time.date.v1.yaml
use: date
postfix: " "
- field: cn_date
from: time.date.v1.yaml
use: chinese
postfix: " "
- field: time
from: time.time.v1.yaml
use: time
postfix: " "
- field: time1 # 生成时间数据,以当前时间为准,从一月前到一周后。
range: "(-1M)-(+1w):60" # 支持当前时间的运算,Y、M、D、W、h、m、s分别对应年、月、日、周、时、分、秒。
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time2 # 生成时间数据,指定起止时间的方式,从早上9点到今天结束,间隔1分钟(60秒)。
range: "20210101 000000-20210101 230000:60" # 起始、结束时间用-分隔,默认为当天的开始和结束时间。
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time3 # 只设置一个时间时,默认当作起始时间,结束时间为当前日期的23时59分59秒
range: "20210821 000000:60" # 和20210821 000000-:60效果是一样的
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time4
range: "-20210830 235959:60" # 省略起始时间的用法
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time5 # 生成时间数据,以当前时间为准,从一月前到一周后。
range: "(-1M)-(+1w):60m" # 步长支持Y、M、D、W、h、m、s分别对应年、月、日、周、时、分、秒
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time6 # 生成时间数据,以当前时间为准,从一月前到一周后。
range: "(-1M)-(+1w):1D" # 步长支持Y、M、D、W、h、m、s分别对应年、月、日、周、时、分、秒
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time7 # 生成时间数据,以当前时间为准,从一月前到一周后。
range: "(+1w)-(-1M):-1D" # 步长为-1天
type: timestamp
format: "YY/MM/DD hh????????ss"
postfix: "\t"
- field: time8 # 生成时间数据,以当前时间为准,从一月前到一周后。
range: "(+1w)-(-1M):1D" # 设置步长为1天,但是会自动的根据起止时间调整正负,实际为-1天
type: timestamp
format: "YY/MM/DD hh????????ss"
执行命令
zd -d demo/28_datetime.yaml
执行结果
生成UUID格式数据
数据定义
fields:
- field: field_uuid
format: "uuid(-)"
执行命令
zd -d demo/29_uuid.yaml
执行结果
新增MySQL字段属性的支持
执行命令
zd -i demo/field_test.sql -o demo/output
生成结果
title: table field_test
desc: ""
author: automated export
version: "1.0"
fields:
- field: Bit
range: 0,1
- field: TinyInt
range: 0-255
- field: SmallInt
range: 0-65535
- field: MediumInt
note: "MEDIUMINT [0,2^24-1]"
range: 0-65535
- field: GeometryCollection
range: "GEOMETRYCOLLECTION"
- field: Int
note: "INI [0,2^32-1]"
range: 0-100000
- field: BigInt
note: "BIGINT [0,2^64-1]"
range: 0-100000
数据设计工具
我的数据
內置数据
数据设计器
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 新一代代码生成器 Lemur-generation 1.3 基础字段支持版
- 数据生成工具 ZenData 发布 1.5 版本,新增 CSV 和 Excel 输出格式,字段定义支持表达式
- springboot~DTO字符字段与日期字段的转换问题
- Protocol Buffers 学习(2):字段类型和其他语言字段类型之间的映射
- Protocol Buffers 学习(2):字段类型和其他语言字段类型之间的映射
- PHPRAP 2.0.2 发布,接口和字段数据分离,字段使用单独数据表
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First JavaScript Programming
Eric T. Freeman、Elisabeth Robson / O'Reilly Media / 2014-4-10 / USD 49.99
This brain-friendly guide teaches you everything from JavaScript language fundamentals to advanced topics, including objects, functions, and the browser’s document object model. You won’t just be read......一起来看看 《Head First JavaScript Programming》 这本书的介绍吧!