MOCK 测试,在测试过程中,对于某些不容易模拟的场景或者是不容易获取的测试数据,使用MOCK 来方便测试。
此处使用Yapi 的高级MOCK ,高级mock有2中方式,期望和脚本。
先使用第一种方式,期望。在已经写好的一个接口种找到yapi生成的mock 地址。
进入高级mock,添加期望:
完成后点击保存。打开jmeter
执行。响应码400 为我上面定义的code
响应结果为我上面定义的结果。定义的过滤IP 为我本机IP
基本信息
- 期望名称:给此条期望命名
- IP 过滤:请求的 IP 是设置的地址才可能返回期望。默认 IP 过滤关闭,任何 IP 地址都可能返回期望。
- 参数过滤:请求必须包含设置的参数,并且值相等才可能返回期望。参数可以在 Body 或 Query 中。
响应
- HTTP Code:期望响应的 HTTP 状态码
- 延时:期望响应的延迟时间
- HTTP 头:期望响应带有的 HTTP 头
- 返回 JSON:期望返回的 JSON 数据
使用第二种方式,脚本的方式。使用的mock地址:
脚本内容是判断请求参数page 是否为1,true 就返回msg:"success"的那段,false就返回msg:"fail"那段。
写完点击保存。打开jmeter。我在jmeter中page参数刚好写的是1,所以返回结果为msg:"success"的那段
使用方法
- 首先开启此功能
- Mock 脚本就是用 JavaScript 对
mockJson
变量修改,请避免被全局变量(httpCode, resHeader, delay)的修改
请求
header
请求的 HTTP 头params
请求参数,包括 Body、Query 中所有参数cookie
请求带的 Cookies
响应
-
mockJson
接口定义的响应数据 Mock 模板 -
resHeader
响应的 HTTP 头 -
httpCode
响应的 HTTP 状态码 -
delay
Mock 响应延时,单位为 ms -
Random
Mock.Random 方法,可以添加自定义占位符,详细使用方法请查看 Wiki