moco 入门及问题解决
废话不多说
下载:
http://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/ 选择最新版本下载jar包
启动:
1:在本地jar包所在目录新建json文件,可自由定制request、respond,可选参数列表:"method", "headers", "json", "factory", "uri", "text","cookies", "xpaths", "json_paths", "version", "file", "queries", "path_resource", "forms"
其中request请求可填:
uri:请求地址
method:请求类型(get post)
cookies:带有cookies验证
headers:请求头,(例 “content-type”:“application/json”)
queries:填写请求参数,请求类型是get请求是时,使用该字段
Forms:填写请求参数,请求类型是post(类似form表单)请求是时,使用该字段
Json:填写请求参数,数据格式是json, get、post都可以使用
file:请求参数,封装在json文件时(文件地址)
response可填:
status:状态码
text:相应数据为文本数据
json:响应数据为json格式的数据
file:响应的数据是json文件(文件地址)
method = get时,参数提交用queries,=post时,用forms,否则报错
例:
新建文件confirmOrder.json,此为post方式不带参数的:
[{
"description" : "新订接受",
"request":{
"uri":"/test/confirmOrder",
"method":"post"
},
"response":{
"text":"接受成功~",
#返回text为中午显示会乱码,故加上headers告诉浏览器编码方式是gbk
"headers":{
"Content-Type":"text/html;charset=gbk"
}
}
}]
2:启动系统命令,cd到jar包所在目录,执行命令:java -jar ./moco-runner-0.12.0-standalone.jar http -p 8888 -c confirmOrder.json
执行成功会显示自定义端口号8888,如图:

因为json文件中定义了url ,此时我们访问 http://localhost:8888/test/confirmOrder 就能得到自定义的response返回了。
注意:
此时遇到的问题:定义了method = post之后不能直接在浏览器访问该url,浏览器提交是get方式,会报400错误,如图:

解决办法:使用postman或jmeter 用post方式提交请求。
成功后返回如下图:

post方式加上参数后,请求:
[{
"description" : "新订接受",
"request":{
"uri":"/test/confirmOrder",
"method":"post",
"forms":{
"orderID":"222",
"optionID":"111",
"env":"uat"
}
},
"response":{
"text":"接受成功~",
"headers":{
"Content-Type":"text/html;charset=gbk"
}
}
}]
请求方式:在form-data中填写参数,请求

重定向:
"request":{...},
"redirectTo":“http://localhost:8888/abc.test.com",
"response":{...}
moco 入门及问题解决的更多相关文章
- moco入门
前提:moco是什么?有什么用 Moco是针对HTTP集成而生的,不过,现在也有人把它用在其它需要一个模拟服务器的场景中.比如,在移动开发中,有人开发一个移动应用,需要有一个远端服务,但在开发时,这个 ...
- 【测试工具】moco入门(一)
转自:https://www.cnblogs.com/tangqiu/p/9493147.html 简单来说,Moco就是解决了开发前端时没有后端支持,开发接口时依赖没有到位的尴尬场景.当然Moco的 ...
- maven入门问题解决
记录入门使用maven的问题和解决方法: 一.用mvn clean compile编译报错/ 或者在IDE中编译时,Problem视图显示错误:无法从maven服务器或者私有服务器或者某个网站中中下载 ...
- (入门篇 NettyNIO开发指南)第四章-TIP黏包/拆包问题解决之道
熟悉TCP编程的读者可能都知道,无论是服务端还是客户端,当我们读取或者发送消息的时候,都需要考虑TCP底层的粘包/拆包机制.木章开始我们先简单介绍TCP粘包/拆包的基础知识,然后模拟一个没有考虑TCP ...
- MySQL学习入门安装和启动及常见问题解决方法(一)
1.下载MySQL 官网地址:https://www.mysql.com/downloads/ 2.个人学习使用,只有下面这个是免费的 3.下载之后解压到目录中,并加入环境变量,如下 创建MYSQL_ ...
- SpringSecurity入门例子及遇到的问题解决
最近学习<Spring 实战>学习到了SpringSecurity,觉得书本上的例子过于复杂,而且不喜欢它基于java配置,更喜欢用xml文件进行配置 于是在极客学院网上学习,感觉挺不错的 ...
- Spring Boot入门——JDBCTemplate使用及其相关问题解决
1.在pom.xml文件中引入相应依赖 <!-- mysql依赖 --> <dependency> <groupId>mysql</groupId> & ...
- Spring Boot入门——多文件上传大小超限问题解决
多文件上传中遇到上传文件大小的问题 org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededExcepti ...
- sublime text 3 入门技巧与常见问题解决
1. 常见问题 - 解决sublime 窗口栏(UNREGISTERED)(未购买)导致的经常性弹窗 解决方法: 点击Help -> About Sublime Text,查看sublimete ...
随机推荐
- 高性能MySQL之基础架构
一.背景 为什么我们需要先学习MYSQL的基础架构先呢? 原因很简单,当我们需要了解一件事物的时候,我们只有站在宏观的层面,才能层层剥丝抽茧的去理解问题.举个例子,我们要看一个框架的源码,一开始就想进 ...
- 超全的 Vue 开源项目合集,签收一下
超全的 Vue 开源项目合集,签收一下 xiaoge2016 前端开发 1周前 作者:xiaoge2016 链接: https://my.oschina.net/u/3018050/blog/2049 ...
- Spring1
一.Spring是什么?有什么用? Spring的适用环境是这样的,假设现在有一个类port,它将提供一个返回消息的功能,代码如下: public class port { private weibo ...
- Java并发编程实战笔记—— 并发编程3
1.实例封闭 class personset{ private final Set<Person> myset = new HashSet<Person>(); public ...
- Json串与实体的相互转换 (不依赖于jar包 只需Eclipse环境即可)
Json串与实体的相互转换 (不依赖于jar包 只需Eclipse环境即可) 最近学习了javaWeb开发,用的是ssh框架里面自己整合了hibernate 和Struts2 和spring框架,其中 ...
- springmvc异步处理
好久没有写过博客了,都是看大牛的文章,略过~~ 突然感觉成长在于总结!废话不多说,开干 由于是公司项目,所以不方便给出代码,看图操作 在项目util目录下创建工具类TaskExecutorConfig ...
- (四十一)c#Winform自定义控件-进度条
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...
- 贪心算法-过河问题 pojo1700
过桥问题: 黑夜,只有一只手电筒 A过桥需要1s B过桥需要3s C过桥需要5s D过桥需要8s E过桥需要12s 求最小过桥时间 贪心算法: 从最大的开始过去,最小的两个做为辅助. 假如左岸人数为2 ...
- spring-boot-plus后台快速开发脚手架之代码生成器使用(十)
spring-boot-plus 代码生成 Generator 代码生成内容 spring-boot-plus在mybatis-plus基础上,新增param/vo等模板 拓展controller/s ...
- .NET使用Bogus生成大量随机数据
.NET如何生成大量随机数据 在演示Demo.数据库脱敏.性能测试中,有时需要生成大量随机数据.Bogus就是.NET中优秀的高性能.合理.支持多语言的随机数据生成库. Bogus的Github链接: ...