API接口测试01理论
定义
接口测试是系统组件间及多个系统之间的测试
如:app与Server间如何进行数据交换,传递
意义
确保主要流程及系统的稳定性
将BUG控制在项目前期
缩短产品的研发周期
检查服务器的异常处理能力
方法
通过编写脚本代码进行测试
通过工具进行测试 如 Jmeter
手工在浏览器中进行测试
范围
同层之间接口的调用,一个接口调用了其他接口
外部系统与系统间的交互
各个子系统之间的交互
流程
参与需求讨论与评审 --》 接口设计和接口定义 --》设计和评审测试用例(注意异常测试点) --》执行测试
用例的设计需要文档: 需求文档,业务流程文档,接口设计文档,wiki文档(详细的介绍入参和出参的情况,个数,数据类型,可能的取值等)
执行测试阶段: 测试用例,测试场景,测试数据
关注点
1.接口有翻页时,页码雨页数的异常值测试
2.数据库的增删改查,比如一个post接口操作完成后,通过列表页接口查看新数据是否与post的数据一致
3.每个接口入参的默认值,异常类型,非空校验
4.借口返回的图片地址能否打开,图片尺寸是否符合需求
5.当输出参数有联动性时,要检查两参数的实际结果是否都符合要求
6.所有列表页接口必须考虑排序值
常用工具
切换host工具:SwithHosts
抓包:fiddler HttpWatch Charles
常进行的接口测试是指 HTTP接口和Web Service接口
HTTP接口介绍
模拟实际场景,对接口进行模拟调用,验证响应性能,输出结果,异常处理
测试用例设计:
参数必填项和可选项
参数的合法输入和非法输入
参数的边界值
参数的异常处理
业务场景的考虑,例如 登录态,权限,依赖性
测试内容:
客户端角度: 请求方式;请求地址(access_token);请求数据;返回值
服务器角度: 数据库变更; 对其他接口的调用
需要测试的是 接口处理逻辑是否正确
测试方式是:调整输入,验证输出
例子: 发朋友圈测试: 业务流程: 1.上传图片接口,返回图片url 2.发朋友圈接口,输入文字和图片,返回成功信息和朋友圈id 3.调用查看朋友圈接口
测试用例设计:
级别一。 测试独立接口
1.测试 上传图片接口
a. 上传单张图片 b.上传多张图片 c.不上传图片 d.长传非图片文件 等
测试 发朋友圈接口
a.正确的图片url,文字 b.多个图片url,文字 c. 错误的url 文字 d 空的url 文字 e url,空文字 f 空url 空文字
级别二。测试组合接口
1.正常状态下
2.没有登陆时