测试接口的时候,可能很多人都会想,按着研发给的接口协议文档来测,不就好了吗?
其实,对于接口的测试,还需要有点深度的需求分析,然后再进行对应的测试。对于接口测试,这里有个不太详细的总结,给大家分享下~
维基百科对【接口测试】的定义如下:接口测试,是集成测试的一部分;即验证被测接口在功能、可靠性、性能和安全方面是否达到预期的软件测试活动。
接口测试,不仅仅是根据接口文档做简单的输入输出的测试。下面给大家看个简单的分析:
· 业务功能分析:
正常情况;
异常情况;
· 边界分析:
参数有、无或null;
参数顺序、个数、类型;
特殊字符;
覆盖必输入字段;
组合可选字段;
字符串长度(0、max、max+1);
业务规则边界;
· 隐形需求:
并发;
DB数据量大;
同时大批量数据;
环境异常;
· 安全性:
SQL注入;
敏感信息是否加密;
· 性能测试:
CPU;
内存;
磁盘I/O;
网络I/O;
举个例子:给某客户端提供群发接口,该接口协议采用HTTP+JSON/XML方式传输,返回参数使用JSON包装好后的数据以便分析,其中的一个接口协议如下:
接口描述:批量发送相同的内容
接口地址:—
请求方式:post
请求参数:
字段名称 数据类型 必填 描述
---- string 是 账号
---- string 是 密钥
---- string 是 被叫号码集合
---- string 是 主叫号码
---- string 是 短信内容
---- string 是 时间戳
返回结果:
参数名称 数据类型 说明
---- string 被叫号码
---- string 生成的短信发送序列号
result string 1:发送成功;0:发生失败
resultMsg string 失败原因
对该接口进行部分简单的分析:
业务功能:
正常使用场景:用户名与主叫号码匹配,其他字段符合规则
…
异常使用场景:用户名或密钥不对等
…
边界分析
业务规则边界:被叫单个/多个(最大个数)/被叫号码异常、长短信边界
…
参数边界:必输字段都有填写正确/缺少必输字段、缺少时间戳或时间戳为null或格式不对、被叫为空、被叫号码长度
…
安全性:
敏感字符是否加密、SQL注入、恶意攻击等
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
文档获取方式:
加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)
这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取