简单mock服务simple-boot-mock-server如何使用

关于此mock服务相关介绍见:https://fugary.com/?p=626

安装运行

  1. 下载运行:https://github.com/fugary/simple-boot-mock-server/releases下载最新zip文具
    1. 下载解压后,binstart.bat运行即可
  2. Docker运行:docker run -p 9086:9086 fugary/simple-boot-mock-server:latest

登录使用

默认启动访问:http://localhost:9086

有两个用户admin/12345678mock/mock,登录后第一时间修改密码,新建自己的账户

修改密码

进入个人资料,清空密码,修改自己的密码即可

简单mock服务simple-boot-mock-server如何使用

mock分组

进入mock分组页面,点击【新增】,每个分组对应一个api接口组,里面可以有多个请求路径,每个路径可以认为是一个api接口。

简单mock服务simple-boot-mock-server如何使用

新增,主要填写名【分组名称】就可以了,【路径ID】一般自动生成(需要全局唯一),不过保留手动填写的支持,方便需要手动指定的特殊情况。

注意:代理地址是配置的请求之外的地址将发送到代理地址获取数据,支持http和https,也就是需要使用的真实地址,本地mock这个是不需要填写的

简单mock服务simple-boot-mock-server如何使用

点击【配置】进入子页面配置请求路径

简单mock服务simple-boot-mock-server如何使用

mock请求

一个mock分组下面可以配置多个mock请求,处理不同的请求并给出响应,下面三个值唯一定位一个请求

  1. 请求路径(默认会自动在前面加上/
  2. 请求方法
  3. 匹配规则

新建请求

简单mock服务simple-boot-mock-server如何使用

保存后可以点击测试:

简单mock服务simple-boot-mock-server如何使用

测试请求

请求测试这块说明:

  1. 如果在分组时没有配置【代理地址】,只配置请求没有配置响应数据将会得到404错误
  2. 简单mock服务simple-boot-mock-server如何使用
  3. 如果在分组时配置了【代理地址】,只配置请求没有配置响应数据将会转发给代理地址,从代理地址获取响应:
  4. 简单mock服务simple-boot-mock-server如何使用
  5. 如果配置了响应数据,将会返回配置的响应数据,下面会介绍如何配置响应数据,将在后面做测试

mock响应数据

响应数据是给当前请求路径配置实际的响应体,支持各种状态码,content type等

新建响应数据

每个请求下面都可以配置多个响应数据,但是只有一个默认请求数据

简单mock服务simple-boot-mock-server如何使用

简单写死配置响应数据很简单,如下图所示:

简单mock服务simple-boot-mock-server如何使用

保存后就可以测试实际响应

注意:这里有两个测试:

  1. 请求测试时针对请求的,请求下面配置有多个响应数据时,选择第一条,如果指定了默认数据就取默认数据
  2. 数据测试时针对单个数据的,每个数据测试时返回自己配置的响应数据

简单mock服务simple-boot-mock-server如何使用

因为只有唯一一条数据,请求测试和响应数据测试时响应的数据都一样:

简单mock服务simple-boot-mock-server如何使用

默认响应数据

有多条响应数据的时候可以指定某一条为默认数据,在测试多种响应的时候很有用,比如要测试正常和错误两种响应,可以先配置好两条响应数据,当需要正确数据时,就把正确的那一条设置为默认,如果需要错误的数据时,就把错误那条设置为默认。

【默认标记】与【设置默认按钮】见下图

简单mock服务simple-boot-mock-server如何使用

如果把错误设置为默认,测试如下:

简单mock服务simple-boot-mock-server如何使用

数据复制功能

为了快速添加多条数据,可以直接点击某一条数据的【复制按钮】

简单mock服务simple-boot-mock-server如何使用 ,可以快速复制一份一模一样的数据,然后修改成自己想要的数据即可。

高级功能

下面介绍下高级功能,如果上面的基本功能不够用,下面有比较多的高级功能,有一定难度

Mock.js支持

目前响应数据时支持Mock.js语法的,使用的就是Mock.js,不过是通过JDKScriptEngine调用。

什么是Mock.jshttp://mockjs.com/

Mock.js文档:https://github.com/nuysoft/Mock/wiki

测试Mock.js支持:

在刚才的数据中写入Mock.js支持的格式,这里以生成一些城市数据为例:

简单mock服务simple-boot-mock-server如何使用

测试请求响应如下:

简单mock服务simple-boot-mock-server如何使用

变量支持

有时候我们可能需要用一些变量替换响应数据,这里没有Mock.js那么强大,不过不局限于json响应,可以支持XML中替换数据,变量支持如下:

  • request.body——body内容对象(仅json时会解析成对象)
  • request.bodyStr——body内容字符串
  • request.headers——头信息对象
  • request.parameters——请求参数对象
  • request.pathParameters——路径参数对象
简单变量替换

比如请求参数中有个name字段,需要响应中返回回来:

简单mock服务simple-boot-mock-server如何使用

测试如下:

简单mock服务simple-boot-mock-server如何使用

Mock.js变量使用

如果是JSONpost请求,可以解析出请求的值,并替换给返回数据:

配置请求:

简单mock服务simple-boot-mock-server如何使用

测试结果:

简单mock服务simple-boot-mock-server如何使用

匹配规则

匹配规则是稍微比较复杂的功能,主要是在相同url和请求方法的情况下,区分不同请求给出不同的响应。

比如这个场景:如果请求参数的orderNo>100时返回正确正确的数据,否则返回错误的数据

匹配规则使用JS表达式计算,计算结果为真就是匹配,为假就是不匹配

匹配规则和默认响应有冲突,优先按照匹配规则匹配,只要配置有匹配规则不能作为默认响应

这里的匹配规则,支持的变量和前面【变量支持】模块一致:

简单mock服务simple-boot-mock-server如何使用

测试成功:

简单mock服务simple-boot-mock-server如何使用

测试错误:

简单mock服务simple-boot-mock-server如何使用

给TA打赏
共{{data.count}}人
人已打赏
运维

最新simple-boot-mock-server服务升级

2024-11-19 10:39:03

运维

使用virtualbox挂载文件夹教程

2024-11-22 11:58:27

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索