Mock生成随机数据常用的类型规则
我们一般在模拟数据时都希望生成一些随机的数据,mock中内置了很多种不同类型的随机数据,我们可以使用它们生成各种类型的随机数据:
Type | Method |
---|---|
基本类型 | boolean, natural, integer, float, character, string, range, date, time, datetime, now |
图片 | image, dataImage |
颜色 | color |
文本 | paragraph, sentence, word, title, cparagraph, csentence, cword, ctitle |
姓名 | first, last, name, cfirst, clast, cname |
网站 | url, domain, email, ip, tld |
地址 | area, region |
编号 | guid, id |
使用:使用时我们只需要把值设置成 @方法名 即可,比如,生成一个随机的 Email:
常用的数据类型
一、生成boolean
@boolean
二、生成数字
1.自然数(>=0整数)
@natural
@natural(min,max)
2.整数
@integer
@integer(min,max)
3.小数
@float
@float(min,max,dmin,dmax)
dmin:小数部分位数最小值
dmax:小数部分位数最大值
4.整数整组
@range(min,max)
@range(min,max,step)
step:递增的步长
@range(10)
// => [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
@range(3, 7)
// => [3, 4, 5, 6]
@range(1, 10, 2)
// => [1, 3, 5, 7, 9]
@range(1, 10, 3)
// => [1, 4, 7]
三、生成文本
1.单个字符
@character
@character(‘lower/upper/number/symbol’)
@character(pool)
如果传入了 `'lower'` 或 `'upper'`、`'number'`、`'symbol'`,表示从内置的字符池中选取一个字符:
{lower: "abcdefghijklmnopqrstuvwxyz",upper: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",number: "0123456789",symbol: "!@#$%^&*()[]"
}
2.字符串
@string
@string(length)
@string(min,max)
3.英文单词
@word
@word(length)
@word(min,max)
4.英文句子
@sentence
@sentence(len)
@sentence(min,max)
5.英文段落
@paragraph
@paragraph(len)
@paragraph(min,max)
6.中文汉字
@cword
@cword(pool)
@cword(len)
@cword(pool,len)
@cword(min,max)
@cword(pool,min,max)
@cword()
// => "干"
@cword('零一二三四五六七八九十')
// => "六"
@cword(3)
// => "别金提"
@cword('零一二三四五六七八九十', 3)
// => ""七七七""
@cword(5, 7)
// => "设过证全争听"
@cword('零一二三四五六七八九十', 5, 7)
// => "九七七零四"
7.中文句子
@csentence
@csentence(len)
@csentence(min,max)
8.中文段落
@cparagraph
@cparagraph(len)
@cparagraph(min,max)
9.中文标题
@ctitle
@ctitle(len)
@ctitle(min,max)
四、生成名字
1.英文名
@first——名
@last——姓
@name——姓名
@name(middle)
middle:是否生成中间名字
@name()
// => "Larry Wilson"
@name(true)
// => "Helen Carol Martinez"
2.中文名
@cfirst——姓
@clast——名
@cname——姓名
五、网站
1.生成一个IP
@ip
2.生成一个Email
@email
@email(domain)
domain:指定域名
@email()
// => "x.davis@jackson.edu"
@email('nuysoft.com')
// => "h.pqpneix@nuysoft.com"
3.生成域名
@domain
4.生成URL
@url
@url(protocol,host)
protocol:指定协议,例如HTTP
host:指定域名
@url()
// => "mid://axmg.bg/bhyq"
@url('http')
// => "http://splap.yu/qxzkyoubp"
@url('http', 'nuysoft.com')
// => "http://nuysoft.com/ewacecjhe"
六、生成时间
1.基本用法
@date
@time
@datetime
2.格式化时间
可以通过 format 参数设置时间的格式
@date(format)
@time(format)
@datetime(format)
Format | Description | Example |
---|---|---|
yyyy | A full numeric representation of a year, 4 digits | 1999 or 2003 |
yy | A two digit representation of a year | 99 or 03 |
y | A two digit representation of a year | 99 or 03 |
MM | Numeric representation of a month, with leading zeros | 01 to 12 |
M | Numeric representation of a month, without leading zeros | 1 to 12 |
dd | Day of the month, 2 digits with leading zeros | 01 to 31 |
d | Day of the month without leading zeros | 1 to 31 |
HH | 24-hour format of an hour with leading zeros | 00 to 23 |
H | 24-hour format of an hour without leading zeros | 0 to 23 |
hh | 12-hour format of an hour without leading zeros | 1 to 12 |
h | 12-hour format of an hour with leading zeros | 01 to 12 |
mm | Minutes, with leading zeros | 00 to 59 |
m | Minutes, without leading zeros | 0 to 59 |
ss | Seconds, with leading zeros | 00 to 59 |
s | Seconds, without leading zeros | 0 to 59 |
SS | Milliseconds, with leading zeros | 000 to 999 |
S | Milliseconds, without leading zeros | 0 to 999 |
A | Uppercase Ante meridiem and Post meridiem | AM or PM |
a | Lowercase Ante meridiem and Post meridiem | am or pm |
T | Milliseconds, since 1970-1-1 00:00:00 UTC | 759883437303 |
七、生成地址
1.生成中国大区
@region
@region()
// => "华北"
2.生成省份
@province
3.生成城市
@city
@city(prefix)
prefix:布尔值,是否生成所属的省
@city()
// => "唐山市"
@city(true)
// => "福建省 漳州市"
4.生成县
@county
@county(prefix)
prefix:布尔值,是否生成所属省、市
@county()
// => "上杭县"
@county(true)
// => "甘肃省 白银市 会宁县"
八、生成邮政编码
@zip
九、编号
1.身份证
@ID
@id()
// => "420000200710091854"
2.GUID
@guid
@guid()
// => "662C63B4-FD43-66F4-3328-C54E3FF0D56E"
十、生成图片
1.图片URL
@image()
@image( size )
@image( size, background )
@image( size, background, text )
@image( size, background, foreground, text )
@image( size, background, foreground, format, text )
size:尺寸,格式为:‘宽x高’
background:背景色,格式为:#FFFFFF
text:图片上显示的文本
foreground:广本颜色
format:图片格式,可选值包括:png、gif、jpg。
@image()
// => "http://dummyimage.com/125x125"
@image('200x100')
// => "http://dummyimage.com/200x100"
@image('200x100', '#fb0a2a')
// => "http://dummyimage.com/200x100/fb0a2a"
@image('200x100', '#02adea', 'Hello')
// => "http://dummyimage.com/200x100/02adea&text=Hello"
@image('200x100', '#00405d', '#FFF', 'Mock.js')
// => "http://dummyimage.com/200x100/00405d/FFF&text=Mock.js"
@image('200x100', '#ffcc33', '#FFF', 'png', '!')
// => "http://dummyimage.com/200x100/ffcc33/FFF.png&text=!"
2.Base64图片编码
@dataImage
@dataImage(size)
@dataImage(size,text)
十一、生成颜色
@color
@hex
@rgb
@rgba
@hsl
参照官网实例即可: http://mockjs.com/examples.html
拓展:
{‘name|3′:’lz’} 此为模板数据格式
属性名name、 生成规则: 重复属性自3次 , 属性值:lz
- ‘name | min-max’: string 通过重复 string 生成一个字符串,重复次数大于等于 min,小于等于 max
- ‘name | count’: string 通过重复 string 生成一个字符串,重复次数等于 count
- ‘name | min-max’: number 生成一个大于等于 min、小于等于 max 的整数,属性值 number 只是用来确定类型。
- ‘name | +1’: number 属性值自动加 1,初始值为 number
- ‘name | min-max.dmin-dmax’: number 生成一个浮点数,整数部分大于等于 min、小于等于 max,小数部分保留 dmin 到 dmax 位。
- ‘name | 1’: boolean 随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2
- 属性值是对象:var obj={‘host’:’www.baidu’,’port’:’12345′,’node’:’selector’}
- ‘name | count’: object 从属性值 object 中随机选取 count个属性。
- ‘name | min-max’: object 从属性值 object 中随机选取 min 到 max 个属性
- 属性值是数组:var array=[‘momo’,’yanzi’,’ziwei’]
- ‘name|1’: array 从属性值 array 中随机选取 1 个元素,作为最终值
- ‘name|+1’: array 从属性值 array 中顺序选取 1 个元素,作为最终值。
- ‘name|count’: array 通过重复属性值 array 生成一个新数组,重复次数为 count。
- ‘name|min-max’: array 通过重复属性值 array 生成一个新数组,重复次数大于等于 min,小于等于 max
Mock生成随机数据常用的类型规则相关推荐
- mockjs语法规范、设置mockjs拦截响应时间、Mock.Random占位符生成随机数据
首先回顾vue-cli项目中使用mockjs步骤: 1.安装mockjs.axios(http请求库): cnpm install mockjs axios --save 2.在项目中新建一个mock ...
- python 生成随机数据,随机中文,英文,数字,姓名等
笔者也经常在网上查询信息,但发现很多信息都是照搬,内容甚至有错误,可用性很低.笔者就认为如果要分享就应该把遇到的问题真实的分享出来,让更多同路人少走弯路.节约时间. 觉得这篇文章有帮助的同学可以点个赞 ...
- 接口测试的时候如何生成随机数据进行测试
在进行接口测试的时候会需要生成一些随机数据进行测试,今天教大家使用apipost自带的mock字段变量生成随机数据进行测试. 打开apipost 左下角有一个红色字体的内置mock字段变量,今天我们生 ...
- python随机生成一组数据_使用Python random模块生成随机数据实例
在本节中,我们将学习如何使用random模块(random)在Python中生成随机数和数据.该模块为各种分布(包括整数,浮点数(实数))实现了伪随机数生成器. 本文的目标: 以下是我们将在本文中介绍 ...
- 用sklearn mysql_sklearn 生成随机数据
接触sklearn很久了,众所周知,sklearn包含了很多机器学习的方法,可以用几行代码实现丰富的机器学习过程. sklearn提供的一些机器学习方法 sklearn.datasets里包含了大量的 ...
- python随机数据库_Python实现生成随机数据插入mysql数据库的方法
本文实例讲述了Python实现生成随机数据插入mysql数据库的方法.分享给大家供大家参考,具体如下: 运行结果: 实现代码: import random as r import pymysql fi ...
- mysql随机生成数据并插入_python生成随机数据插入mysql
import random as r import pymysql first=('张','王','李','赵','金','艾','单','龚','钱','周','吴','郑','孔','曺','严' ...
- 设置 mock_【学习】接口测试-使用mock生产随机数据
在做接口测试的时候,有的接口需要进行大量的数据进行测试,还不能是重复的数据,这个时候就需要随机生产数据进行测试了.这里教导大家使用mock.js生成各种随机数据. 一.什么是mock.js mock. ...
- 接口测试-使用mock生产随机数据
在做接口测试的时候,有的接口需要进行大量的数据进行测试,还不能是重复的数据,这个时候就需要随机生产数据进行测试了.这里教导大家使用mock.js生成各种随机数据. 一.什么是mock.js mock. ...
最新文章
- session传递参数_分布式 Session 之 Spring Session 架构与设计
- 皮一皮:直男这下懂了吧...
- python自带的shell是什么-python shell是什么东西
- 填充路径时使用的非零环绕规则
- java描述常用的集合类_Java常用的集合类
- 用卷积神经网络识别实际田间条件下茶叶病虫害(自然环境下拍摄的数据集不用太多预处理)
- 运筹说 第41期 | 运输问题硬核知识点梳理—表上作业法求解运输问题
- 结巴分词有前空格_结巴分词详细讲解
- Maven本地仓库清理
- 利用Greenfoot制作简单的小游戏——记忆翻牌游戏(一)
- 勾号、叉号、圈号的收集
- BZOJ 3168 [Heoi2013]钙铁锌硒维生素 ——矩阵乘法 矩阵求逆
- 2021-01-04
- 数据分析|SQL面试题集锦
- 权威发布 | 芝诺数据入围教育部高等教育司产学合作协同育人项目企业名单
- VMware Horizon Client 远程控制桌面无法输入中文
- java 圆角窗口_JAVA实现圆角窗体 .
- VMware安装Redhat虚拟机步骤
- SOPHON sail.Decoder无法正常解码rtsp流(使用ffmpeg和opencv可以正常解码)
- python使用tkinter库,封装操作excel为GUI程序
热门文章
- VBNET常用字符串常量
- 用EXCEL来解决同期比较的问题
- Entity Framework Core 7.0 未来规划
- 开源大数据:MLSQL
- Javascript第五章history对象第四课
- php 课程节次周次提取,用PHP写一个最简单的解释器Part5(计算器最后一节,下节开始如何写个脚本语言)...
- php算法求出一个数可以被分解成多少个_程序员的算法趣题
- booleanfield()和booleanfield(default=True)在数据库的表中无法插入
- BZOJ3529: [Sdoi2014]数表(莫比乌斯反演,离线)
- zabbix-3.2 官方手册