首页
TVP 最新优惠活动
学习
活动
专区
工具
返回腾讯云官网
Mock服务moco系列(一)
简介、第一个Demo、Get请求、Post请求
1、简介
1、什么是mock?
mock翻译过来有模拟的意思。
2、什么是moco?
moco是一个简单搭建的Stub框架。Stub可翻译为桩,指用来替换一部分功能的程序段。桩程序可以用来模拟已有程序的行为(比如一个远端机器的过程)或是对将要开发的代码的一种临时替代。简单来说,moco就是解决了开发前端时没有后端支持,开发接口时依赖没有到位的尴尬场景等。
主要特点:
(1)只需要简单的配置request、response等即可满足要求,支持http、https、socket等。
(2)支持在request 中设置headers、cookies等。
(3)对GET、POST、PUT、DELETE等请求方式均支持,很适合web开发。
(4)无需环境配置,有Java环境即可。
(5)修改配置后,立刻生效。只需要维护接口,也就是契约即可。
(6)对可能用到的数据格式都支持,如json、text、xml、file等。
官方网址:
https://github.com/dreamhead/moco
2、下载
官方下载地址:
https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/
下载相应版本即可,本篇使用0.12.0版本,下载moco-runner-0.12.0-standalone.jar文件。
3、第一个Demo
moco配置文件格式必须是json格式。配置文件是个数组,也就是说,可以在一个文件中配置多个接口的请求和响应。
1、配置文件常用字段:
description:用来描述这个会话的目的,它只是用作注释,在运行时将被忽略。
request:请求内容。
response:响应内容。
uri:请求关注点。
method:基于指定的HTTP方法(get、post、put、delete、HEAD)。
queries:get请求参数。
forms:post请求参数。
text:文本。
json:Json格式。
file:文件。
headers:信息头。
cookies:cookie信息。
status:响应状态代码。
redirectTo:将请求重定向到指定的url上。
match:正则表达式。
latency:延迟。
template:模板。
2、创建一个Demo示例(01Demo.json)。
description为此接口描述。
请求内容填写在request里,响应内容填写在response里。
响应内容格式为text文本格式。
请求地址格式为:IP+端口号+uri拼接而成(例如http://10.106.29.102:8083/demo)
内容如下:
[
{
"description":"Moco Demo",
"request":{
"uri":"/demo"
},
"response":{
"text":"Hello Moco"
}
}
]
命令行进入下载完成的moco-runner-0.12.0-standalone.jar包的目录。
输入启动moco服务命令:
java -jar moco-runner-0.12.0-standalone.jar http -p 8083 -c <配置文件路径>/XXX.json
注:
-p 指定moco服务端口
-c 配置文件路径及文件名
例如:
java -jar moco-runner-0.12.0-standalone.jar http -p 8083 -c 01Demo.json
如图所示:moco服务启动,端口号为8083。
1、打开浏览器访问moco服务地址。
(1)本地访问:
http://localhost:8083/demo
或者:
http://127.0.0.1:8083/demo
(2)远程访问(IP为10.106.29.102):
http://10.106.29.102:8083/demo
2、访问结果显示。
3、控制台显示moco服务请求与响应的信息。
4、Get请求
1、创建02Get.json配置文件。
该配置文件有2个接口(没有参数的Get请求、有参数的Get请求)。
"method":"get"为Get请求,如果不添加此字段,接口默认也是Get请求。
queries为Get请求参数(添加2个参数username、password与其对应值)。
内容如下:
[
{
"description":"Get请求(没有参数)",
"request":{
"uri":"/getdemo",
"method":"get"
},
"response":{
"text":"Moco Get"
}
},
{
"description":"Get请求(有参数)",
"request":{
"uri":"/getdemo2",
"method":"get",
"queries":{
"username":"admin",
"password":"123456"
}
},
"response":{
"text":"admin,123456"
}
}
]
2、输入启动moco服务命令。
java -jar moco-runner-0.12.0-standalone.jar http -p 8083 -c 02Get.json
3、浏览器访问moco服务地址。
(1)Get请求(没有参数)
访问地址:
http://localhost:8083/getdemo
访问结果显示:
(2)Get请求(有参数)
访问地址:
http://localhost:8083/getdemo2?username=admin&password=123456
访问结果显示:
5、Post请求
1、创建03Post.json配置文件。
该配置文件有2个接口(没有参数的Post请求、有参数的Post请求)。
"method":"post"为Post请求。
forms为Post请求参数(添加2个参数username、password与其对应值)。
内容如下:
[
{
"description":"Post请求(没有参数)",
"request":{
"uri":"/postdemo",
"method":"post"
},
"response":{
"text":"Moco Post"
}
},
{
"description":"Post请求(有参数)",
"request":{
"uri":"/postdemo2",
"method":"post",
"forms":{
"username":"admin",
"password":"123456"
}
},
"response":{
"text":"admin,123456"
}
}
]
2、输入启动moco服务命令。
java -jar moco-runner-0.12.0-standalone.jar http -p 8083 -c 03Post.json
3、Postman访问moco服务地址。
打开已安装好的Postman。
(1)Post请求(没有参数)
协议类型选为POST
访问地址:http://localhost:8083/postdemo
点击Send,访问结果显示:
(2)Post请求(有参数)
协议类型选为POST
访问地址:http://localhost:8083/postdemo2
Body添加参数(参数名与参数值)。
点击Send,访问结果显示:
本文分享自 AllTests软件测试 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!
玻璃钢生产厂家江苏室外玻璃钢花盆余杭区玻璃钢雕塑设计玻璃钢 雕塑厂家植物玻璃钢雕塑一般多少钱温州人物玻璃钢雕塑多少钱欧式玻璃钢雕塑销售厂家广东商业商场美陈价钱新乡玻璃钢浮雕园林雕塑公司安新玻璃钢雕塑公司鹤壁玻璃钢仿铜雕塑定做厂家广州玻璃钢人物雕塑点击查看详情海西商场美陈兖州玻璃钢雕塑体育公园玻璃钢雕塑淮北玻璃钢雕塑价钱沧州玻璃钢卡通雕塑安阳标牌玻璃钢雕塑公司广东仿铜玻璃钢雕塑图片曲靖玻璃钢雕塑制作乌兰察布雕塑玻璃钢卡通江苏小型玻璃钢花盆经玻璃钢雕塑造型贴金威海人物玻璃钢雕塑生产厂家漯河玻璃钢景观雕塑定做厂家福州玻璃钢公园雕塑廊坊玻璃钢仿铜雕塑定制河南佛像玻璃钢雕塑销售厂家昌平区商场美陈公司报价人物玻璃钢雕塑怎么制作户外玻璃钢雕塑施工哪家好香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万