接口测试 mock server 工具moco
看过乙醇分享的接口测试,自己练习了moco,这里呢,吧一些练习的笔记坐下记录,方便自己查阅。
开源地址https://github.com/dreamhead/moco , 到QuickStart 进行下载。
下载就是一个jar包,

新建文件夹,然后看着官网的例子来做第一个接口
创建config.json,
[
{
"request":
{
"method":"get",
"uri":"/"
},
"response":
{
"json":"huanyingni moco"
} }
]
然后cmd输入
java -jar moco-runner-0.11.1-standalone.jar http -p 12306 -c config.json

代表已经启动,那么我们在url访问

可以看到我们的server已经启动,我们看下命令行给我们的记录信息。

其实我们还可以吧这个config文件的数据进行数据驱动
[
{
"request":
{
"method":"get",
"uri":"/get"
},
"response":
{
"file":"allpost.json"
} }
]
数据文件如下
[
{
"title":'first1',
'url':'/post/1'
},
{
"title":'first2',
'url':'/post/2'
},
{
"title":'first3',
'url':'/post/3'
}
]
这样我们保存后,后台检查到变动,就会自动重新加载

访问网址后得到我们在数据驱动文件写入的数据。

其实我们还可以增加请求的参数如:
[
{
"request":
{
"method":"get",
"uri":"/get",
"queries":
{
"id":"",
"name":"moco"
}
},
"response":
{
"text":"moco get"
} }
]
这样我们的访问必须增加参数才可以访问
还可以约定请求头必须加json格式
[
{
"request":
{
"method":"post",
"uri":"/post",
"text":
{
"json":"{\"beijing\":\"2018\",\"shanghai\":\"mocoshanghai\"}"
}
},
"response":
{
"status":""
}
}
]
增加headers
[
{
"request":
{
"method":"post",
"uri":"/post",
"text":
{
"json":"{\"beijing\":\"2018\",\"shanghai\":\"mocoshanghai\"}"
},
"headers":
{
"content-type":"application/json",
"Connection":"keep-alive",
"Content-Encoding":"gzip"
}
},
"response":
{
"status":"300"
}
}
]
返回文件,
[
{
"request":
{
"method":"post",
"uri":"/post"
},
"response":
{
"file":"allpost.json",
"version":"HTTP/1.0"
}
}
]
加入请求cookie:
{
"request" :
{
"uri" : "/cookie",
"cookies" :
{
"login" : "true"
}
},
"response" :
{
"text" : "success"
}
}
返回cookie
{
"request" :
{
"uri" : "/cookie"
},
"response" :
{
"cookies" :
{
"login" : "true"
}
}
}
重定向,
{
"request" :
{
"uri" : "/redirect"
},
"redirectTo" : "http://www.github.com"
}
https协议的 需要有https证书,其实已经给了说明,
启动命令
java -jar moco-runner-<version>-standalone.jar https -p 12306 -c foo.json --https /path/to/cert.jks --cert mocohttps --keystore mocohttps
需要增加你的证书
很多在github上都有了详细的讲解。看不懂英文吧例子摘抄下来,本地试试,你就知道这是怎么回事了。
接口测试 mock server 工具moco的更多相关文章
- 接口测试 mock server 工具moco学习笔记
看过乙醇分享的接口测试,自己练习了moco,这里呢,吧一些练习的笔记坐下记录,方便自己查阅. 开源地址https://github.com/dreamhead/moco , 到QuickStart ...
- Mock Server利器 - Moco
Moco介绍Moco独立运行所需环境如何运行Moco启动http服务启动https服务Moco HTTPs API配置如何在配置文件添加注释约定请求Body约定接口的uri约定请求参数约定请求方法约定 ...
- Mock Server文章链接
Mock Server文章链接 2017-06-14 1 Dreamhead (Zheng Ye) Moco可以提供以下服务: HTTP APIs Socket APIs REST API GitHu ...
- mock server搭建及接口测试简单实例
一.搭建mock server mock工具很多,这里我们选择用简单易操作的moco服务器 使用前必须先安装java,去相关网站下载Standalone Moco Runner 二.使用mock se ...
- Python接口测试实战5(下) - RESTful、Web Service及Mock Server
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- 基于moco的mock server 简单应用 来玩玩吧
提起mock大家应该就知道是干嘛用的了,再次再介绍一种简单的方式,基于moco的mock server.步骤很简单: 1. 首先,要下载个moco的jar0_1482402640757_moco-ru ...
- 关于mock server
这篇技术博客是在知乎上看到的 知乎js大神张云龙写的 这里贴过来记录下,如果侵权 请告知将及时删除. --------------------------- 为了更好的分工合作,让前端能在不依赖后端环 ...
- 接口测试-Mock测试方法
接口测试-Mock测试方法一.关于Mock测试1.什么是Mock测试?Mock 测试就是在测试过程中,对于某些不容易构造(如 HttpServletRequest 必须在Servlet 容器中才能构造 ...
- Fiddler-009-AutoResponder 简单的 MOCK SERVER 应用实例
在我们日常的测试中经常需要测试特定的响应对应的客户端展示样式是否正确无误,实现测试方法一般有如下三种: 创建新的测试数据(工作量较大) 修改已有测试数据(例如修改对应的状态码,若是最终需要测试的按钮状 ...
随机推荐
- 微信小程序初始化 operateWXData:fail invalid scope
初学者开发微信小程序,可以使用云开发来进行微信小程序的开发. 第一次使用开发工具遇到的问题 解决方案:1.找到云开发 2.点击开通,选择合适自己的开发环境: 3.完成后,返回开发工具界面点击项目第一个 ...
- Python的unittest框架的断言总结
常用的断言方法如下: assertFalse:为假时返回True:self.assertFalse(表达式,“表达式为true时打印的message”) assertTrue:为真时返回True:se ...
- SQL触发器与CLR的使用
在数据库的日常操作中,面对复杂业务的情况下,总会有用sql语句或存储过程不是那么方便的时候,所以这时候就会想到在数据库中调用CLR,也就是调用程序集,此处用C#实现来讲解一个测试案例 测试案例的业务是 ...
- sqlmap参数
sqlmap -u “http://url/news?id=1" –current-user #获取当前用户名称sqlmap -u “http://www.xxoo.com/news?id= ...
- C++:引用的简单理解
前言:引用是C++一个很重要的特性,最近看了很多有关引用的资料和博客,故在此对引用的相关知识进行总结 一.什么是引用 引用,顾名思义是某一个变量或对象的别名,对引用的操作与对其所绑定的变量或对象的操作 ...
- 关于SX1278、SX1276、SX1262的简单详解资料
通常的物联网解决方案和设备一直都非常昂贵,或在实施中不切合实际.理想的无线连接技术应该是低成本.高可靠性的,可进行长距离传输,且拥有超长的电池续航时间.像zigbee.Bluetooth和Wi-Fi这 ...
- 通过ReentrantLock简单了解下并发包中的锁
ReentrantLock在进行实例化时,可以通过构造函数的参数选择是否使用公平锁FairSync或者非公平锁NonfairSync,两者的区别比较简单,如果是公平锁则新来的线程会先检测同步队列中是否 ...
- 通过条件注解@Conditional细粒度的选择bean实例
在进行spring进行开发时,当某个接口有多种实现方式并且我们只想让一种生效时,比如声明如下一个接口和两个实现: public interface LanggageService { String s ...
- 安装MySQL56时,停止在start service这一步
问题: 在安装MySQL56时,安装程序执行到start service这一步就不能完成,系统一直提示“安装时间比预期的的长,是否停止安装这一步(configuration of mysql seve ...
- Runtime Errors:CALL_FUNCTION_REMOTE_ERROR/CALL_FUNCTION_NOT_REMOTE
调用一个新建的接口时,报错. 调用端: 被调用端: 错误很明显,是RFC漏选了 Remote-Enabled Module(运程启用的模块). 修改后,问题解决.