需要模拟第三方接口测试并调用,找了很多mock工具,在git上找到了moco,学习一番,分享一下。
一、下载moco,moco地址
下载后,是一个jar包。
二、配置moco的配置文件
(1)在jar包的同目录下进行创建文件config.json:
(2)配置config.json(这里的配置主要是配置模拟第三方接口的请求值,返回值,请求头等):
常用配置(注意要将其中的中文注释删除):
(1)
{ "request": { "method":"post", #模拟请求方法 "uri":"/jiekou", #模拟请求的接口名 "text": { "json":"{"id":"12306","name":"moco"}" #约定请求的正文,为json格式,并且正文内容为{"id":"12306","name":"moco"}(注意这里的双引号要转义) "headers": { "content-type":"application/json" #约定请求头 } }, "response": { "status":"200", #返回状态为200 "text":"ceshi" #返回正文为ceshi } }
(2)
{ "request": { "headers":{"Content-Type":"application/json;charset=UTF-8"}, #约定请求头 "method":"post",#约定请求方法 "uri":"/jiekou2",#约定请求接口名 "text": { "json":"{"type":"1","data":{"citeCaseId": "11111111","party": [{"partyId": "001","name": "张三","agent":[{"agentId": "002"},{"agentId": "002"}]}]}}" #约定请求json } }, "response": { "status":"200",#约定返回状态 "json":{"code":101,"message":"必要参数缺失。"} #约定返回值为json,并且内容为{"code":101,"message":"必要参数缺失。"} } }
(3)
{ "request": { "headers":{"Content-Type":"application/json"}, #请求头 "method":"post", #请求方法 "uri":"/getList",#请求接口名 "text": { "json":"{"sasj":"20100101","tbsj":"20100101","fywid":"88888","Token":"1","Pagenumber":"1"}" #请求正文 } }, "response": { "file":"ceshi.xml" #请求返回文件(可以返回xml中的内容,将放在与jar包同级目录下即可) } }
注:若要同时模拟多个接口,可以用[ ]括起来,并用,分割,也就是json的格式。
三、启动mock:
在搜索栏中输入cmd并回车:
java -jar moco-runner-0.12.0-standalone.jar http -p 8881 -c config.json
运行成功。直接使用postman或者其他接口调用工具调用接口即可。