目录

接口测试笔记

接口测试笔记

7、Mock接口框架

Mock介绍

  • mock用来模拟接口,这里mock用的是moco框架,moco框架是github上的一个开源项目,可模拟HTTP、HTTPS、Socket协议。

工作原理

https://i-blog.csdnimg.cn/direct/dd677d3e6f764bc78058892e78241fed.png

Moco的启动及第一个Demo

  • 创建配置文件startup.json
  • 启动服务器

java -jar moco-runner-***.jar http -p 9999 -c startup.json

常用的请求参数
  • description:请求描述(程序不会识别到)
  • request:请求内容
  • response:响应内容
  • uri:请求的url资源路径
  • method: 请求类型,支持HTTP协议相关的请求类型,如post,get,put,delete等
  • headers:request/response的请求/响应头
  • cookies:接口进行cookie信息的校验
  • queries:get请求的请求参数
  • json:request/response的请求/响应json数据
  • forms:post的表单请求体
  • text:text响应体
  • redirectTo:请求时重定向
Demo

https://i-blog.csdnimg.cn/direct/f0e88dfdaff1456a845f23377a61ad92.png

带参数的get方法实现

Moco支持动态加载配置文件,所以无论是修改还是添加配置文件都是不需要重启服务的

https://i-blog.csdnimg.cn/direct/0fec86d4c0f24c0185fdf953763eab11.png

正则匹配
  • \w 匹配字母、数字、下划线的字符
    • 表示任意多个字符
  • \w* 表示任意多个\w

https://i-blog.csdnimg.cn/direct/878e574d46e647d3a0d1e2973dcc66fa.png

在moco中配置post请求

https://i-blog.csdnimg.cn/direct/2b9072f8f68641caac4ec4527cc6cda7.png

请求体为form的post方法实现

https://i-blog.csdnimg.cn/direct/6e5d2ed1c73b40d799be06d24defee66.png

请求体为json的post方法实现

https://i-blog.csdnimg.cn/direct/90cc4d19f2b040aeb09921fbe15d96f1.png

带cookies信息的get请求

https://i-blog.csdnimg.cn/direct/141e67cca0384913b5899b76f99bc928.png

带cookies信息post请求

https://i-blog.csdnimg.cn/direct/17da4493ca354a5e8ef98dc432d09599.png

带有headers信息的mock请求

https://i-blog.csdnimg.cn/direct/f1677be2d9fc4da5bc713f6b3c7860d0.png

实现请求重定向

https://i-blog.csdnimg.cn/direct/e391aa3218cb43d49f9ec05e259699e6.png

全局配置文件

java -jar moco-runner-***.jar  http  -p 9998  -g all.json

https://i-blog.csdnimg.cn/direct/4b479d2dce124352814865269cc0bab8.png

如果响应为空,可以尝试:

java -jar -Dfile.encoding=UTF-8 moco-runner-1.3.0-standalone.jar http -p 7777 -c getdemo1.json