接口测试(5)-apifox进行接口数据Mock

2025-04-20  本文已影响0人  软件开发技术修炼

强大的Mock 功能(https://mp.weixin.qq.com/s/AqrRVNJgq6ftX6ZspaxNDg

1、mock接口返回数据

首先,你需要在 Apifox 里面创建一个接口,定义好请求参数和返回数据结构;
Apifox 会自动启动一个本地的 Mock 服务,我复制一下 Apifox 自动生成的 Mock 地址。
(注意get请求浏览器才可以直接打开)

接口浏览器打开如下

2、返回状态码200,及特定值

(1)先调用正常接口返回的数据,然后复制后导入到返回响应中

(2)针对code字段,由于它是Integer类型,所以可以添加@integer( min, max) 指定其min和max都是200即可,即@integer(200,200),而由于msg是字符串则只需要直接填入请求成功 即可。

image.png

(3)在每个接口的接口文档下可以找到 本地Mock 和云端Mock,我们无需搭建任何Mock服务即可使用,针对不同的接口响应Apifox还提供了不同的Mock入口。

Mock中,查看成功(200) 的Mock请求,点击快捷请求即可跳转到快捷请求。点击发送 ,Apifox就可以直接给我们Mock出一个响应结果

image.png

3、自定义智能 Mock 规则

比如我们公司的订单 id 是以 “DD” 打头的十位数字,我就可以新建一个 string 类型的规则,匹配规则写 “*orderid” , mock 规则写一个正则表达式:@regexp(/DD\d{10}/)。这样,只要我任何一个接口返回字段是以 “orderid” 结尾,都会得到一个 “DD1284918414” 这样的返回值。

自定义新规则 正常使用

4、返回字段高级设置,枚举值

三种状态,还可以定义为枚举,枚举可选值为(“available”,“sold”,“pending”)。如果接口这样定义了,那么 Mock 就会自动从这三个字符串里取值。

这个字段高级设置里不止有枚举,还可以设置长度范围、正则规则等。如果字段类型是数字,还可以设置最大值最小值等。
如果你对 JSON Schema 比较熟的话,也可以直接写 Schema。

返回对应枚举值

还可以进行接口调试的自动校验功能生效的,如果后端接口返回的数据不符合这里的设置,Apifox 会返回一个“数据结构校验失败”;

Apifox 支持 数据模型(Schema) 定义,不同的接口可以复用相同的数据模型,模型里定义的规则在所有引用它的接口里都会生效

5、高级mock,添加期望

一个期望就是指当你的请求包含某个参数值的时候,就返回特定的数据。

6、高级 Mock 模板语法

生成一列数据 生成列表

7、高级 Mock 自定义脚本

上一篇 下一篇

猜你喜欢

热点阅读