前面我们使用的都是单个配置文件(test.json),这样针对单个接口操作是没问题的,当然我们也可以将所有接口都放在一个配置文件中,因为配置文件的格式为一个数组类型的 JSON 格式,数组的每一个元素是一个 request/response 的配对。还有一种方式我们设置全局配置文件,即在文件中引入其他配置文件的方式,最后启动时,只针对全局配置文件启动,比较方便
1)我们可以不定义request,访问http://localhost:12306/时,Moco 就会直接将配置的 response 中的内容返回。
//test.json
[
{
"response": "welcome"
}
]
浏览器访问:
2)因为配置文件是一个数组格式,所以我们可以在一个配置文件中定义多个request/response对
//test.json
[
{
"request": {
"uri": "/register"
},
"response": {
"text": "register page"
}
},
{
"request": {
"uri": "/login"
},
"response": {
"text": "login page"
}
}
]
浏览器访问:
Moco 支持在全局的配置文件中引入其他配置文件,这样就可以分服务定义配置文件,便于管理。
1)以上方注册、登录为例,定义两个json文件,分别为register.json和login.json
//register.json
[
{
"request": {
"uri": "/register",
"method": "post",
"json": {
"name": "suner",
"phone": "18200000000",
"pwd": "123"
}
},
"response": {
"json": {
"msg": "register success",
"status": 200
}
}
}
]
//login.json
[
{
"request": {
"uri": "/login",
"method": "post",
"json": {
"username": "suner",
"pwd": "123"
}
},
"response": {
"json": {
"msg": "login success",
"status": 200
}
}
}
]
2)新建一个config.json文件,引用register.json和login.json
//config.json
[
{"include": "register.json"}, //include后面接的是以当前文件所在目录的相对路径,三个在同一目录下,所以这里直接是文件名
{"include": "login.json"}
]
3)启动moco(这里指定配置文件用-g,全局的意思,如截图启动成功)
简单地启动 moco 服务时是通过命令来启动的:
【java -jar moco-runner-
切换到moco的jar包所在目录,java -jar为固定格式,执行时,
4)打开jmeter测试
register请求
register响应
login请求
login响应
在moco服务端也可以看到我们的参数(moco是动态获取数据的,即我们改变配置文件后无需重启moco)
至此,moco简单的模拟接口请求与响应完成,有了这个可以很好为我们提供数据,而无需一定要部署好接口服务器,也无需后台(或者第三方接口)必须提供返回的接口数据,我们只需要知道返回的格式就可以moco我们想要的数据