Giter Club home page Giter Club logo

zmock's Introduction

zmock功能

模拟出一个不存在的http接口,根据请求参数的不同返回对应的数据。

zmock应用场景

  1. 在接口文档写好后,就可以mock出一个接口,以便于客户端开发,且测试人员也可以开始写测试用例。mock出来的接口也相当于一种契约,服务端与客户端都必须遵守这个mock出来的契约。
  2. 当系统中有第三方接口,在做性能测试时,可以mock第三方接口,作为性能测试的档板。
  3. 其它。

zmock介绍

  1. 开发语言及框架:java,spring,easyui
  2. web容器:tomcat
  3. 部署方式:
  • 将打包好的zmock.war更名为ROOT.war
  • 将ROOT.war放在tomcat的webapps目录下面
  • 启动tomcat
  1. 设置

zmock平台使用说明

接口文档: 请求链接:/api/info/v1 请求方法:post 请求参数示例:{"name":"zhang","age":30} 请求参数说明:

参数名 参数类型 是否必需 示例值
name string zhang
age int 30

响应说明:

  1. 当name的值为空或者age的值小于等于0时,响应: {"retCode":"300","retMsg":"参数不正确"}
  2. 当name的值为zhan时,响应: {"retCode":"301","retMsg":"数据不存在"}
  3. 当name值为zhang且age的值为18时,响应: {"retCode":"301","retMsg":"数据不存在"}
  4. 其它情况下,响应: {"retCode":"200","retMsg":"ok.","data":{}}

以上是一份简单的接口文档,公司不同,文档的要求不同,但我相信大家都应该能看懂这份文档,现在,我们根据这份文档来mock一个http接口出来:

  1. 点击左上角的+号:

  1. 确定后,在菜单中选择或输入测试DEMO,在mock请求URL中填写:

  1. mock请求方法选择POST:

  1. 在mock请求参数模板中:

  1. 在mock规则定义中点击新增:

  1. 再增加一条规则:

  1. 最后一条规则:

  1. 保存后,mock就完成了

mock完成后,我们来测试一下这个http接口:

zmock的特点

  1. 请求参数模板的定义。根据请求参数模板,来判断请求参数是否正确。 mock请求参数模板说明:
  • .*表示请求参数为任意字符串,用于POST BODY
  • 如username=&password=表示POST表单提交或GET请求
  • 如{"username":"","password":""}表示POST BODY为JSON串
  1. mock规则利用表达示来定义。比如/name,/age,这是json路径,具体的请参考:https://github.com/zhangfei19841004/zson 表达示所支持的比较符有: == != > >= < <= in contains 表达示方便扩展,如有需要,自行扩展即可。 支持的连接符有:and or (),其中()的优先级最高,支持括号里套括号。
  2. 采用文件异步保存数据的方式,且数据都放在内存里,保证接口的响应速度。
  3. zmock脚本说明
  • zmock脚本采用jexl表达示,具体请参考:jexl官网
  • 内置对象有:headers,params,response

zmock地址

作者联系方式

  • QQ:408129370

zmock's People

Contributors

zhangfei19841004 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.