背景:
因考虑公司所有测试人员上手比较快,而公司开发都在使用apifox,所以快速探索了下apifox进行接口自动化测试。
功能还是比较丰富的,该平台也是一直在维护更新,技术群经常会有回复消息。
ps网址:https://app.apifox.com/user/login
个人邮箱@qq.com进行注册登陆的,网页端及下载应用都可。
以下是我初步探索的一些问题及解决方法:
1、接口运行后报数据结构不通过
- $.data.list[0].id 不允许为 null
- $.data.list[0].educationList[0].educationNo 不允许为 null
- $.data.list[0].educationList[0].degreeNo 不允许为 null
- $.data.list[0].educationList[0].educationPost 不允许为 null
- $.data.list[0].educationList[0].witness 不允许为 null
- $.data.list[0].educationList[0].witnessPhoneId 不允许为 null
- $.data.list[0].educationList[0].otherMajor 不允许为 null
- $.data.list[0].educationList[0].tutor 不允许为 null
- $.data.list[0].educationList[0].tutorPhoneId 不允许为 null
解决方法:重新修改文档,查看格式正确
2、接口报401
解决方法:token由全局参数改为环境变量
3、后置操作经常被清空???
解决方法:
后置操作不是在接口文档中保存的,获取token的后置操作要保存为用例,下次运行用例才能将token填充到环境变量中去。
单独执行一次获取token接口
4、是否引用A接口所生成的数据成功
解答:若不确定是否正确引用了 A 接口所生成的数据,可以在 B 接口的前置操作中添加以下自定义脚本:
var petid = pm.variables.get("petid");
console.log(petid)
脚本调试:调试脚本可以在 前置脚本 和 后置脚本 里编写,使用console.log('hello')方式将调试信息写入控制台,打开 控制台 即可查看。
5、不同层级引用参数设置??
目录 、父级、子级
(1)全局脚本 / 分组脚本
支持全局设置(在根目录里设置)前置操作、后置操作,设置后项目里的所有接口运行时都会生效。
支持分组里设置前置操作、后置操作,设置后分组里的所有接口运行时都会生效。
(2)接口请求的执行流程如下:
[全局前置脚本] -> [分组前置脚本] -> [接口前置脚本] -> [发送接口请求] -> [返回接口结果] -> [全局后置脚本] -> [分组后置脚本] -> [接口后置脚本]。
网友评论