EasyMock:Mock.js的DTD和DPD规范,EasyMock使用说明

Mock.js

什么是Mock.js

在这里插入图片描述

Mock.js入门

一、安装命令

cnpm install mockjs

二、模拟数据

让对象以字符串形式输出,数字2表示分隔的大小

JSON.stringify(data,null,2)

注意:mockjs中除了数字,都要用''括起来

//mockjs入门
//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list':[{
        'id':1,
        'name':'zhangsan'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
三、模拟5个数据

需求:生成列表数据,数据条数为5条。

'list|5'
//mockjs入门
//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':1,
        'name':'zhangsan'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述

数据模板定义规范DTD

定义属性的元素

属性名称    生成规则    属性值

传统定义数据

属性名:属性值

dtd规范生成模拟数据语法

属性名|生成规则:属性值

生成规则:不同类型的生成规则不同

'name|min-max': value
'name|count': value
'name|min-max.dmin-dmax': value
'name|min-max.dcount': value
'name|count.dmin-dmax': value
'name|count.dcount': value
'name|+step': value

一、数字类型

'name|min-max': value				属性的取值范围
'name|count': value					属性的取值
'name|min-max.dmin-dmax': value		属性的取值范围,dmin-dmax表示小数位数范围
'name|min-max.dcount': value		属性的取值范围,dcount表示小数位数
'name|count.dmin-dmax': value		属性的取值,dmin-dmax表示小数位数范围
'name|count.dcount': value			属性的取值,dcount表示小数位数
'name|+step': value					每生成一条数据+step的值

二、字符串类型

'name|min-max': value	属性值随机重复min-max次
'name|count': value		属性值重复count次

三、布尔类型

如果value为true

'name|min-max': value	true出现的几率为min/min-max
'name|count': value		true出现的概率=50%

四、对象类型

'name|min-max': value	随机从对象的属性中选择min-max个
'name|count': value		随机从对象的属性中选择count个

五、数组类型

'name|min-max': value	随机生成min-max个元素
'name|count': value		生成count个元素

数据占位符定义规范DPD

语法规则:

'属性名''@占位符'

占位符

基本方法
图像方法
文本方法
名称方法
网络方法
地址方法

在这里插入图片描述
一、基本方法
1、@string(5) 生成5个字符
2、@integer(1,9999) 生成1-9999的随机数字
3、@data 生成随机日期

//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':'@integer(1,9999)',
        'name':'@string(5)',
        'birthday':'@date'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
二、图像方法
@image(100) 生成100*100的图片的地址

//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':'@integer(1,9999)',
        'name':'@string(5)',
        'birthday':'@date',
        'heading':'@image(100)'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
三、文本方法
1、@title(2) 生成有2个单词的标题
2、@word(100) 生成有100个字符的正文

//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':'@integer(1,9999)',
        'name':'@string(5)',
        'birthday':'@date',
        'heading':'@image(100)',
        'title':'@title(2)',
        'content':'@word(100)'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
四、名称方法
1、@first 生成firstname
2、@last 生成lastname
3、@name 生成整个名称,但与上面两个的组合不匹配

//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':'@integer(1,9999)',
        'name':'@string(5)',
        'birthday':'@date',
        'heading':'@image(100)',
        'title':'@title(2)',
        'content':'@word(100)',
        'firstname':'@first',
        'lastname':'@last',
        'fullname':'@name'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
五、网络方法
1、@email
2、@ip
3、@url

//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':'@integer(1,9999)',
        'name':'@string(5)',
        'birthday':'@date',
        'heading':'@image(100)',
        'title':'@title(2)',
        'content':'@word(100)',
        'firstname':'@first',
        'lastname':'@last',
        'fullname':'@name',
        'email':'@email',
        'ip':'@ip',
        'url':'@url'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
六、地址方法
1、@region
2、@city
3、@county

//1.导入模块
let mock = require("mockjs")
//2.通过mockjs工具类模拟产生:数组数据
let data = mock.mock({
    'list|5':[{
        'id':'@integer(1,9999)',
        'name':'@string(5)',
        'birthday':'@date',
        'heading':'@image(100)',
        'title':'@title(2)',
        'content':'@word(100)',
        'firstname':'@first',
        'lastname':'@last',
        'fullname':'@name',
        'email':'@email',
        'ip':'@ip',
        'url':'@url',
        'region':'@region',
        'city':'@city',
        'county':'@county'
    }]
})
console.log(JSON.stringify(data,null,2))

在这里插入图片描述
七、生成中文
在分隔符之前加c
1、@ctitle
2、@cword
3、@cfirst
4、@clast
5、@cname

EasyMock

在线文档:https://www.easy-mock.com/docs

在线使用EasyMock

一、进入地址:https://www.easy-mock.com,登录

在这里插入图片描述
二、点击右下角创建项目
注意:一个前端工程对应一个项目
在这里插入图片描述
三、进入项目,创建接口
在这里插入图片描述
四、编写接口
在这里插入图片描述
五、使用postman测试

六、同步swagger
1、点击右边设置
在这里插入图片描述

2、上传已经完成的文档,保存
在这里插入图片描述

3、同步Swagger
在这里插入图片描述

自建easymock

可以查看上传的文档
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值