moco简介
moco框架是github上的一个开源项目,本身支持API和独立运行两种方式。通过使用API,开发人员可以在JUnit、JBehave等测试测试框架里使用Moco,极大程度地降低了集成点测试的复杂度
moco可提供一下服务:
- 支持http、https、socket;
- 支持设置headers、cookies、statuscode;
- 支持GET、POST、PUT、DELETE请求;
- 只需JRE环境即可运行;
- 支持热更新;
- 支持json、xml、text、file数据格式;
- 能与JUnit、Maven、Gradle集成
使用步骤
安装JDK环境
此部分不再赘述
下载moco的jar包
https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/1.1.0/
创建moco项目
moco目录结构如下:
image.png
其中moco.json用来存放mock的内容,内容如下:
[
{
"description": "这是我们的运行demo",
"request": {
"uri": "/demo_get",
"method": "get",
"queries": {
"test_01": "test_01",
"test_02": "test_02"
}
},
"response": {
"text": "第一个moco框架demo"
}
},
{
"description": "这是我们的运行demo",
"request": {
"uri": "/demo_post",
"method": "post",
"headers":{"content-type":"application/json"},
"cookies":{"login":"true"},
"redirectTo":"/get",
"forms": {
"test_01": "test_01",
"test_02": "test_02"
}
},
"response": {
"json": {
"msg":"I am response",
"code": 200
}
}
}
]
说明:
- description:请求描述(程序不会识别到)
- request:请求内容
- response:响应内容
- uri:请求的url资源路径
- method: 请求类型,支持HTTP协议相关的请求类型,如post,get,put,delete等
- headers:request/response的请求/响应头
- cookies:接口进行cookie信息的校验
- queries:get请求的请求参数
- json:request/response的请求/响应json数据,当然也可是本地的json文件(可实现数据分离)
- forms:post的表单请求体
- text:text响应体
- redirectTo:请求时重定向
启动moco服务
java -jar moco-runner-1.1.0-standalone.jar http -p 8899 -c moco.json
-p:启动后服务器应用所占用的端口号
-c:mock数据的内容文件
通过浏览器/postman等客户端模拟请求响应的api
image.png参考文档:
moco常用配置参数及实战
网友评论