在做接口测试的时候,有的接口需要进行大量的数据进行测试,还不能是重复的数据,这个时候就需要随机生产数据进行测试了。这里教导大家使用 mock.js 生成各种随机数据。

*一、什么是 mock.js *

mock.js 是用于生成随 * 机数据,拦截 Ajax 请求。 通过拦截 Ajax 请求,根据数据模板生成并返回模拟数据,让前端攻城师独立于后端进行开发,帮助编写单元 测试。

1、增加单元测试的真实性
通过随机数据,模拟各种场景。

2、开发无侵入
不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据。 用法简单
符合直觉的接口。

3、数据类型丰富
支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。

4、方便扩展
支持扩展更多数据类型,支持自定义函数和正则

5、总结

因为 mock.js 可以生产各种数据数据,所以也可以用在接口测试上,生成各种接口参数值。

*二、如何在接口测试工具 apipost 中使用 mock.js *

1、apipost 内置了常用的 mock 字段变量


需要使用变量的时候,直接把变量名称复制到参数值中就可使用了,如图:

2、在与执行脚本中编写自定义的 mock.js 变量

如:

1)生产一个随机手机号,熟悉 mock.js 的可以自己编写一下,不会的可以直接百度,然后粘贴到与执行脚本中,在设置一个环境变量,变量值为数据生产的手机号:

const phonePrefix = [‘132’, ‘135’, ‘189’]

const index = Math.floor(Math.random() * phonePrefix.length)

var phone = phonePrefix[index] + Mock.mock(/\d{8}/)

apt.variables.set(“phone”, phone);

引用设置的变量,如图;

2)生产一个随机时间戳

var timestamp=Date.parse(new Date())

apt.variables.set(“timestamp”, timestamp);

引用随机时间戳

有兴趣深入 mock.js 可以去 mock.js 官网进行学习。


↙↙↙阅读原文可查看相关链接,并与作者交流