一.Apifox概述
1.Apifox是API文档、API调试、API Mock、API自动化测试一体化协作平台
2.Apifox = Postman + Swagger + Mock + JMeter
3.一套系统、一份数据,解决多个API工具之间的数据同步问题
4.只需定义好API文档后,API调试、API Mock、API自动化测试即可直接使用,无需再次定义
5.API文档和API开发调试使用同一个工具,API调试完成后即可保证和API文档定义完全一致
高效、及时、准确
6.Apifox帮助文档:https://apifox.com/help/overview/introduction
二.Apifox安装
1.官网下载安装:https://www.apifox.cn/#pricing
2.使用邮箱注册后,登录
3.创建团队
4.新增项目
三.Apifox使用
1.新建和设计接口
1.1.进入项目后,可通过手动创建或者导入外部接口的方式新建接口
2.创建POST请求
四.接口设置断言
1.在接口的后置条件中设置断言
2.断言成功
3.断言失败
五.提取变量
1.在接口的后置条件中可提取变量,变量类型可以设置为:环境变量、全局变量、临时变量
1.1.提取的结果设置为全局变量后,可直接在环境管理页面中查看到
六.环境和变量
1.使用环境管理
1.1.通常接口路径中不设置HTTP协议和域名,这两部分信息可在环境管理中进行设置并统一管理
1.2.进入环境管理页面
1.3.设置全局变量和前置URL等信息
1.3.1.配置项目的环境,如测试环境、开发环境、生产环境,这里环境是指请求URL的域名
1.3.2.如http://127.0.0.1
1.4.创建的接口路径不写域名,直接以/开头(注意页面右上角的环境选择)
2.使用变量
2.1.Apifox中有三种变量:环境变量,全局变量,临时变量
2.2.环境变量:同一个变量可以在不同环境中设置不同的值,变量值会随着环境的不同而随之改变
2.3.全局变量:全局变量的值在所有环境中都相同
2.3.1.全局参数:如常用的请求头,后面在接口使用时会自动带上全局参数
2.3.2.可以通过开关控制是否启用,有的接口不需要这个请求头时可以关闭
2.4.临时变量:临时变量仅在单次运行接口用例或测试管理里的测试用例或测试套件过程中有效,不会持久保存至系统
// 设置临时变量
pm.variables.set('变量名', '变量值')
// 获取临时变量
var var1 = pm.variables.get('变量名')
// 取消设置临时变量
pm.variables.unset('变量名')
七.使用变量
1.Apifox中所有类型的变量都是通过"双大括号"的方式调用,如:{{token}}
2.请求body为Json或者raw格式的,也可以直接使用变量
{
"field1": "{{stringVariable}}",
"field2": {{intVariable}},
"field3": {{arrayVariable}},
"field4": {{objectVariable}},
"field5": {{$timestamp}},
"field6": {{objectName.attr}},
"field7": {{variable[0].attr}}
}
3.Json中的string类型,在调用变量时必须添加双引号,其他类型无需添加
4.如果变量为对象类型,调用时使用{{对象名.属性名}}调用
4.1.自定义代码中使用pm.variables.get(“对象名.属性名”)
5.如果变量为数组对象类型,则调用使用{{对象名[0].属性名}}
5.1.自定义代码中使用pm.variables.get(“对象名[0].属性名”)
6.变量优先级:存在同名变量时,优先级为:临时变量 > 测试数据变量 > 环境变量 > 全局变量