moco接口框架介绍

Moco 是一个搭建模拟服务器的工具,其支持 API 和独立运行两种方式,前者通常是在 junit 、testng等测试框架中使用,后者则是通过运行一个 jar 包开启服务

在maven中央仓库中,moco有三个版本,分别是moco-core、moco-runner、moco-junit。如果需要在junit等测试框架中使用,则需要同时引进这三个包。如果是独立运行的方式,则只需要下载moco-runner-standalone这个包到本地就可以了,这个包并不是maven中央仓库中的moco-runner,而是moco-runner-standalone,下载地址为:下载地址,下载带有standalone标识的jar包。

moco的github地址为:github,可以在自述文件中点击链接Standalone Moco Runner下载最新的standalone版本的jar包。

下面分别介绍独立运行和api两种方式运行。

1、独立运行方式

  1. 下载moco-runner到本地。

  2. 准备json配置文件。

  3. 启动服务,命令格式如下:

    java -jar jar包的路径 http -p 运行端口 -c 要运行的json配置文件(可以包含路径)
    
  4. get请求json配置文件示例:

    [{"description": "一个简单的get请求","request": {"method": "get","uri": "/login"},"response": {"text": "我是login get method","headers":{"Content-Type":"text/html;charset=utf-8"}}},{"description": "带参数的get请求,p1和p2是两个参数","request": {"method": "get","uri": "/reg","queries": {"p1": "v1","p2": "v2"}},"response": {"text": "带参数的get请求","headers":{"Content-Type":"text/html;charset=utf-8"}}},{"description": "get请求返回json类型数据","request": {"method": "get","uri": "/login_json"},"response": {"json": {"key":"value","请求方式是get":"响应结果为json类型"},"headers": {"Content-Type": "application/json;charset=utf-8"}}}
    ]
    
  5. post请求json配置文件示例:

    [{"description": "post请求,请求参数为json格式,响应格式为json","request": {"method": "post","uri": "/post_json","json": {"login_status": "successful"}},"response": {"json": {"login": "ok"},"headers": {"Content-Type": "application/json;charset=utf-8"}}},{"description": "post请求,请求及响应都为json,并且请求带cookies","request": {"method": "post","uri": "/post_cookie","json": {"login_status": "successful"},"cookies":{"user_id":"xsdaqawea"}},"response": {"json": {"login": "ok"},"headers": {"Content-Type": "application/json;charset=utf-8"}}},{"description": "post请求,请求及响应都为json,并且请求带cookies和headers","request": {"method": "post","uri": "/post_cookie_headers","json": {"login_status": "successful"},"cookies": {"user_id": "xsdaqawea"},"headers":{"Content-Type":"application/json"}},"response": {"json": {"login": "ok"},"headers": {"Content-Type": "application/json;charset=utf-8"}}},{"description": "post请求,请求和响应为form,入参是form形式,返回是json数据","request": {"method": "post","uri": "/login_form","forms": {"username": "zhangshan","password": "123456"},"headers": {"content-type": "application/x-www-form-urlencoded"}},"response": {"json": {"error_code": 0,"reason": "successed","username": "zhangshan","checkstatus": "on"},"status": 200}}
    ]
    

注意:

post请求中:
headers:请求头,根据是form还是json格式的请求来填写
from格式:“content-type”: “application/x-www-form-urlencoded”
json格式:“content-type”: “application/json”
请求参数格式以及数据,对应headers的content-type
form格式关键字为forms
json格式关键字为json

  1. 重定向json配置文件示例:

    [{"description":"重定向到指定网站","request":{"method":"get","uri":"/login_redirect"},"redirectTo":"https://www.baidu.com"}
    ]
    
  2. 配置一组json配置文件。

    [{"include":"get.json"},{"include":"post.json"},{"include":"redirect.json"}
    ]
    

这种方式的启动命令与前面的不太一样,具体格式如下:

java -jar jar包的路径 http -p 运行端口 -g 要运行的组配置文件(可以包含路径)

可以看到,区别就是配置文件前面的命令变成了-g。

2、apt运行方式

此种方式形式还不清晰,后面用到了再具体描述。

moco接口框架介绍相关推荐

  1. Moco接口框架的应用实战

    一.moco框架的基本功能 moco是一个模拟接口请求和发送的测试框架,包括但不局限于get请求,post请求,cookies和heades等等,是github上一个开源的测试框架,官网:https: ...

  2. java 微信api框架_Java架构学习(五十二)使用框架开发微信微信框架介绍整合微信开发框架WxJava使用微信返回消息模板接口使用WxJava框架发送模板消息http协议参数转义知识...

    一.微信框架介绍 1.access_token是公众号的全局唯一调用接口的凭证,它两个小时更新一次. 获取access_token方法: https请求方式: GET https://api.weix ...

  3. ESFramework网络通信框架介绍之(2)――网络通信消息NetMessage

    ESFramework网络通信框架与元数据 较之C++而言,.NET是一个更加"动态"的平台,其动态能力建立在反射机制之上,而反射的基础是"元数据". 上文已经 ...

  4. dommel mysql_.Net Core AA.FrameWork应用框架介绍

    开发多年,一直在从社区获取开源的便利,也深感社区力量的重要性,今天开源一个应用基础框架AA.FrameWork,也算是回馈社区,做出一点点贡献,希望能够帮助类似当年入行的我. AA.FrameWork ...

  5. 【Django】创建项目及框架介绍,学习笔记(一)

    [学习教程] 1.Django基础教程:https://code.ziqiangxuetang.com/django/django-tutorial.html 2.Django博客:http://ww ...

  6. 流行的9个Java框架介绍: 优点、缺点等等

    流行的9个Java框架介绍: 优点.缺点等等 在 2018年,Java仍然是世界上最流行的编程语言.它拥有一个巨大的生态系统,在全世界有超过900万Java开发人员.虽然Java不是最直接的语言,但是 ...

  7. iOS流媒体直播整个框架介绍(HLS、RTSP)

    iOS流媒体直播整个框架介绍(HLS.RTSP) 目录技术文章2016年7月17日 一.HTTP(WebService) 基于HTTP的渐进下载Progressive Download流媒体播放仅是在 ...

  8. ESFramework网络通信框架介绍之(3)――消息处理器和处理器工厂

    一.ESFramework网络通信框架与消息处理器 无论是服务端还是客户端,都需要对接收到的消息进行处理,在ESFramework网络通信框架中,处理消息的组件称为消息处理器,所有的消息处理器都实现了 ...

  9. Python-基于flask的接口框架

    Python-基于flask的接口框架 ​Flask是一个Python编写的Web 微框架,让我们可以使用Python语言快速实现一个网站或Web服务.本文参考自Flask官方文档,大部分代码引用自官 ...

最新文章

  1. Linux设备驱动--块设备(三)之程序设计(转)
  2. python七段数码管设计图案-Python 七段数码管绘制
  3. 杀毒软件:看企业版与单机版之间区别
  4. asp mysql连接已重置,mysql-检查经典ASP中的连接是否正常
  5. eyoucms问答 百度权重是什么
  6. java加密证书生成_mkcert 1.3.0 发布,本地 HTTPS 加密证书生成工具
  7. when will the ABindings be filled for json.JSONModel in SAP UI5
  8. IDE--ubuntu下安装 Source insight
  9. 【Source Insight 】之marco学习笔记2
  10. 开源DataBase组件:FluentMigrator
  11. Python网络编程(Socket)
  12. .net framework 4.0 0xc8000247错误解决
  13. mysql监控工具:zabbix+MPM(Performance Monitor for MySQL)
  14. 基于ERDAS软件的高分三号(GF-3)SAR影像的预处理
  15. 图像空间域分析之图像统计特征
  16. WAP技术与网站建立(转)
  17. 旧苹果电脑安装win10 双系统
  18. python中fabs函数_Python fabs() 函数 - Python 教程 - 自强学堂
  19. 东京・京都“APARTMENT HOTEL MIMARU”首次导入运用智能音箱和聊天机器人的IT服务
  20. 结构体类型的定义及所占内存的字节数

热门文章

  1. 达梦单机数据库安装(for linux)
  2. 顶风作案!某国产浏览器和网址导航被网信办点名
  3. [RTC] RTP/RTCPRTSP及音视频同步相关知识
  4. 2021年制冷与空调设备运行操作考试题库及制冷与空调设备运行操作最新解析
  5. win10 1803 频繁死机,卡死不动
  6. 快消品行业SRM供应商管理系统:供应商全生命周期管理,构建高效协同供应商平台
  7. HYSBZ 1862 GameZ游戏排名系统
  8. 清除浮动的五种方法及优缺点
  9. IC学习笔记19——Gvim的简易操作
  10. 开源指南|如何从零开始参与 Apache 顶级开源项目?(二)