API接口测试规范总结
目录
1、参数校验
2、返回值校验
3、命名规范
4、业务判断
5、安全校验
1、参数校验
1、正常场景
(1)功能按照接口规范要求实现
(2)返回状态码200
2、异常场景
(1)参数为空
直接为空
null
[]
{}
(2)参数错误
(3)无操作权限
(4)特定的业务逻辑报错,涉及敏感的报错不应该有明确的原因,例如登录失败就不能报成密码错误或手机号码错误
(5)单位标准,时间,服务端使用时间戳还是直接日期类型,在接口定义里前后端要一致
(6)重复传参,字段唯一性校验,发送两次请求,接口需要做重复判断处理
3、必填参数
(1)接口文档要求必填的字段
(2)必填参数传参
传参类型和内容都正确
传参类型错误,参数类型非法,例:int传string
必填参数数值范围错误,数值越界
必填参数为空格,前面,中间,尾部
(3)必填参数不传,必填参数全部为空,必填参数部分为空
(4)必填参数组合,有些参数需要配合一起使用时需组合测试
4、非必填参数
(1)接口文档规范要求非必传的参数
(2)正向,所有参数均传正确
(3)逆向
某个参数为空,需要做判空处理
非必填参数少传一个,接收方需要处理
5、升级接口
(1)什么情况下需要升级接口
客户端不支持的接口
业务上有较大变更,和老业务有冲突
(2)升级接口影响
对新版本APP有影响,老版本没有影响
新接口和老接口调用同一个底层,底层有修改,老版本正常回归
6、更新接口字段
(1)新版本和老版本可以共用一个接口,只需要新增字段
(2)更新字段影响
新增字段需要对老版本做兼容处理
新增字段必填,需要做版本控制
新增字段不必填,老版本要兼容
2、返回值校验
1、返回数据是否必要
2、返回数据数量需要限制
案例:
电商下单接口测试环境返回2000多张优惠券
推荐服务挂掉,电商h5页面接口返回全部商品
3、契约验证
如上
3、命名规范
接口、字段命名的含义准确且拼写无误
4、业务判断
1、约束条件
(1)数值限制,例如:规定达到什么数值才能被使用,未达到不可以使用
(2)状态限制,例如:删除状态的数据不可被其他业务关联
(3)关系限制,例如:例如联网锁需要先创建房东,房源才能关联锁
(4)权限限制
防越权
数据权限,没有对应权限的不应返回响应的数据
2、操作对象,例如:非自己创建的数据,不能修改
3、时序分析,例如:要先做完A操作才能进行B操作,即前置条件需要有,下个接口才能进行
5、安全校验
1、防遍历校验
2、防越权校验
3、安全校验,xss、sql注入
4、隐私信息,入参、反参、日志
5、数据加密,入参、下行加密
6、频次限制
7、内容安全