看过乙醇分享的接口测试,自己练习了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学习笔记的更多相关文章

  1. 接口测试 mock server 工具moco

    看过乙醇分享的接口测试,自己练习了moco,这里呢,吧一些练习的笔记坐下记录,方便自己查阅. 开源地址https://github.com/dreamhead/moco  ,  到QuickStart ...

  2. GNU工具链学习笔记

    GNU工具链学习笔记 1..so为动态链接库,.a为静态连接库.他们在Linux下按照ELF格式存储.ELF有四种文件类型.可重定位文件(Relocatable file,*.o,*.a),包含代码和 ...

  3. 前端自动化构建工具 gulp 学习笔记 一、

    一.我对gulp的初期理解 是一种前端辅助开发工具 可以帮你把js,css,img等文件 合并.压缩,图片好像是合并为精灵图,合并为精灵图之后,还会生成一个css样式表. 官方解说是:基于流的自动化构 ...

  4. Windows驱动开发工具 WDK 学习笔记(1)

    目标:能够把电脑当作一个集成有高性能处理器的开发板用起来,当然,还自带了一个高级的操作系统Windows(必须的).总之,就是在一个带了操作系统的高性能开发板上的驱动程序开发. 性质:纯属业余爱好 1 ...

  5. Mock接口平台Moco学习

    Mock就是模拟接口的.本文学习Mock的 Moco开源框架. Moco源码和jar下载地址: git  jar  下载moco-runner-xxxx-standalone.jar moco的启动及 ...

  6. Mock Server利器 - Moco

    Moco介绍Moco独立运行所需环境如何运行Moco启动http服务启动https服务Moco HTTPs API配置如何在配置文件添加注释约定请求Body约定接口的uri约定请求参数约定请求方法约定 ...

  7. Smartbi报表工具的学习笔记,如何学好报表分析?

    近期,因为工作需要,学习了一个报表工具Smartbi,这是国产BI软件,其功能还是挺强大的,并且学习成本很低,容易上手. 其实在学习Smartbi之前,我还学习了一段时间的微软BI工具sqlserve ...

  8. Android 工具视频学习笔记_WDS

    1. 由于Android源码过于庞大,SourceInsight会经常卡死,不适合了.适合的是Android Studio, 非常好用.使用手册上有介绍如何安装. 编译安卓的过程说明手册中也有. 3. ...

  9. Metasploit和python两种安全工具的学习笔记

    Metasploit是个好东西 主要参考了<Metasploit渗透测试魔鬼训练营>这本书. 一.先用自己的靶机感受一下该工具的强大 linux靶机的ip如图 按照书上写的配置,如图 然后 ...

随机推荐

  1. 移动端JS事件、移动端框架

    一.移动端的操作方式和PC端是不同的,移动端主要是用手指操作,所以有特殊的touch事件,touch事件包括如下几个事件: 1.手指放到屏幕上时触发   touchstart 2.手指放在屏幕上滑动式 ...

  2. spring mvc3 静态文件放在WEB-INF下无法访问解决和解决@Controller失效问题

    今天整合spring+mybatis+easyui碰到的问题 将easyui放在WEB-INF下后无法访问, 解决:需配置<mvc:resources mapping="/easyui ...

  3. Linux下 两台机器文件/文件夹 相互拷贝

    Linux下 两台机器文件/文件夹 相互拷贝 设有两台机器 :A:*.101及 B:*.102. 把A下的.temp/var/a.txt拷贝到B机器的/text/目录下: 进入B机器:scp root ...

  4. Redux源码分析之combineReducers

    Redux源码分析之基本概念 Redux源码分析之createStore Redux源码分析之bindActionCreators Redux源码分析之combineReducers Redux源码分 ...

  5. Java基础之接口与抽象类及多态、内部类

    final关键字 被其修饰的类,不能被继承. 被其修饰的方法,不能被覆盖. 被其修饰的变量,是一个常量,不能被修改,所以定义时必须初始化(和C++的const类似). 一般有final,会搭配stat ...

  6. 表达式求值(栈方法/C++语言描述)(二)

    上篇中完成了对表达式求值的整体过程,接下来看看如何处理不同类型的token. 对运算数的处理比较简单,它直接调用函数strtod(),将字符串中的运算数转换为浮点类型并将它压入运算数栈中: void ...

  7. 华为软件开发云CloudIDE功能简测

    华为软件开发云CloudIDE是面向软件开发者的云端开发环境,支持在线编写代码,智能提示,代码提交,代码片段智能搜索等功能. CloudIDE实现了大部分IDE的功能,同时克服了全能IDE的缺点. 一 ...

  8. C++标准库string

    C++标准库string 定义和初始化 string s1 默认初始化,s1是一个空串 string s2(s1) s2是s1的副本 string s2 = s1 等价于s2(s1),s2是s1的副本 ...

  9. 【某集训题解】【DAY 2 T3】与非

    题目描述 作为一名新世纪共产主义的接班人,你认识到了资本主义的软弱性与妥协性,决定全面根除资本主义,跑步迈入共产主义.但是当你即将跨入共产主义大门的时候,遇到了万恶的资本家留下的与非电路封印,经过千辛 ...

  10. 如何通过binlog获取我们想要的MySql语句?

    前言 MySql的binlog一般用于我们对数据的恢复,以及从数据库对主数据库的复制和更新. 假设此时我们有一个需要查询和读取Mysql最近操作DDL的信息,我们需要怎么处理? 聪明的你可能已经想到了 ...