一、什么是Apifox
在当今快速发展的软件开发领域,API(应用程序编程接口)已经成为连接不同系统和服务的核心组件。而Apifox是一款集成了API文档生成、调试、自动化测试、Mock服务以及团队协作功能的综合型工具,能够有效帮助研发测试人员更高效地设计、测试和维护API,提升工作效率。
二、为什么选择Apifox?
目前有很多接口测试相关的工具软件,比如大名鼎鼎的postman,那为什么还要选择使用Apifox呢?核心是以下3点:
- 用户友好界面:中文版简洁直观的操作界面降低了学习成本,即使是初次接触API管理工具的新手也能迅速上手。
- 完全免费:无论是个人开发者还是企业团队,都可以免费使用其全部功能。包括但不限于API文档生成、调试、自动化测试、Mock服务等。
- 功能丰富:支持各类型接口测试,包括:http接口、websocket接口、soap接口、dubbo接口等,同时提供Mock功能、自动化测试、性能测试等丰富的功能用法。
三、注册安装
Apifox官网主页:https://apifox.com/
提供了本地电脑安装版和web版两种版本,我个人更习惯使用本地电脑安装版:
安装后登录账号使用微信扫码登录即可。
四、快速测试接口
4.1 打开软件后,第一步:先新建项目
4.2 第二步:进入项目,点+号按钮,然后先新建接口目录,再新建接口
4.3 http接口调试:选择你要测试的接口类型,然后输入接口URL
POST接口:
点击“发送”,进行调试,会出现“响应结果”区域和“校验响应”区域:
点击“保存”按钮,输入接口名称,即可将该接口保存下来以便后续测试调试使用。
五、常用功能-变量
很多时候接口入参我们希望使用变量来管理,比如token的值,方便以后token值发生变化时,只需要统一改一下变量token的值即可,而不需要每个接口里都去修改token的值,减轻接口测试维护的工作量。
5.1 点击右上角的三根横线按钮,即可管理变量:
5.2 然后可以设置全局变量、环境变量等,这里我们直接设置一个测试环境的环境变量“info_value”, 值就设置为我们需要的“11111”:
5.3 接口入参这里,删掉原来的值"11111",然后点击这个魔法棒,选择“读取变量”,选择我们前面添加的变量“info_value”
5.4 参数值这里会发现使用了变量:{{info_value}},发送请求,点击“实际请求”这里,可以看到确实使用了变量的值“11111”:
六、常用功能-动态组装入参
有的接口的某些字段,每次调用时参数值需要是一个动态值,比如“订单时间”字段,这个时候需要将参数值实现动态组装入参。
6.1 点击接口的“前置操作”,点击“添加前置操作”,会提供多种方式供使用者去动态组装入参:比如通过数据库操作获取接口入参的值,或者编写自定义脚本去动态生成接口入参的值
6.2 Apifox的前置脚本是使用JavaScript语法编写。比如在前置脚本里,我们将环境变量 info_value 的值会设置为当前时间戳,那么接口请求入参中我们用到{{info_value}}这个变量时,它的值就会被替换为当前时间戳:
七、常用功能-添加接口断言
判断接口返回的结果是否正确,是接口测试中必不可少的内容,实现方法也就是我们常说的“添加接口断言”。
7.1 点击接口的“后置操作”,点击“添加后置操作”,选择“断言”:
7.2 假设我们要断言的是返回内容中的“qrtype”字段的值是否等于“static”:
由于接口返回的是Json格式的数据,所以这里“断言对象”我们选择“Response JSON”, JSONPath表达式为:“data.qrtype”等于static。点击发送请求,会发现“校验响应”区域多了一块儿“断言结果”内容:
八、接口自动化测试
当我们创建好了需要的多个接口测试数据之后,大概率我们会考虑是否可以快速的将这些接口进行自动化测试,Apifox提供了这样的功能,而且使用起来非常简单方便。
我们点击右侧菜单栏的“自动化测试”菜单,就可以进入自动化测试页面:
然后我们创建一个自动化测试的目录,在目录下再新建一个测试场景:
点击"添加步骤",选择"从接口导入",可以直接选择我们在"接口管理"里面建好的接口,将它们添加到"测试场景"中来:
右侧可以选择是执行“功能测试”,还是执行“性能测试”,默认是执行“功能测试”:
- “运行环境”我们选择“测试环境”
- “测试数据”由于我们这里演示的接口不需要使用很复杂的测试数据,因此选择“不使用测试数据”
- “循环次数”和线程数,由于是演示使用,所以都设置为“1”
“通知”是指我们测试完成后,怎么发送通知。Apifox提供了多种目前主流发送通知的方式,钉钉、飞书、Email等,“通知对象”那里点进去可以看到:
这里我们选择最简单的Email通知,填上接收通知的Email地址即可:
配置好“通知对象”后,回到“测试场景”处,选上刚才的“通知对象”。然后点击“运行”按钮,运行本次自动化测试,Apifox会执行1次接口自动化测试:
可以看到2个接口的测试通过,接口运行的耗时时间也有展示。点击具体的接口,可以查看本次运行的接口返回内容:
也可以点击左上角的“导出报告”按钮,下载本次的运行报告。同时,我们会发现前面我们设置的邮箱通知也生效了,邮箱中收到了本次自动化测试的运行结果邮件:
希望以上内容对你有帮助,喜欢的同学麻烦点个赞+收藏+关注,一键三连!欢迎关注下方我的公众号:程序员杨叔,各类文章都会第一时间在上面发布,持续分享各类测试开发知识干货,你的支持就是作者更新最大的动力。