构建接口测试体系.md
Mon October 10, 2022 05:59 PM
构建接口测试体系思维
一、关键知识点
Q:互联网产品的测试策略和传统软件产品的测试策略有何不同?
A:通常,互联网产品全量回归不能超过4小时。引入并发执行机制,从测试策略上找到突破口。传统偏向于金字塔模型,互联网偏向于棱形模型。Q:接口是什么,接口测试是什么、测什么、如何测?
- 接口的本质就是契约,约定输入输出。根据服务对象不同,可分为内部、外部接口。
- 模拟调用方,通过接口通信来检测北侧接口的正确性和容错性。
- 准备测试数据;发起被测 api 的请求;验证返回结果。
- Q:没有接口文档怎么办?
- 工具辅助
抓包工具:Fiddler Charles - 分析问题
关注响应头,响应体 - 询问疑惑
参数的含义及来源、参数的作用域、返回值含义 - 业务流程多接口串行分析
- Q:测试尽早介入可以做什么?
A:流程上,相关评审参与;接口测试先行。
二、常见接口测试场景
- 被测业务由多个 API 调用协作完成?
- 打乱调用顺序;
- API 依赖第三方?
- mock第三方接口;
- 异步 API 的测试?
- 异步调用是否成功,通过后台线程检查;
- 验证业务逻辑是否正确,访问请求消息存储位置;
三、实践样例
- 明确被测系统
地址:https://github.com/zhoujinjian/Battle
主要业务逻辑:通过接口模拟两个角色决斗,最后得到输赢结果。进入系统后,选择武器,选择敌人
安装教程:
pip3 install bottle
pip3 install beaker系统运行方法:
python init.py
开始接口测试:单接口
验证每一个接口都正确性和健壮性,可使用工具 postman。业务流程接口测试
保障通过多个接口的串联操作,可以完成原来需求中提出的业务逻辑。自动化测试
接口测试和持续集成结合起来。postman可以借助 Newman工具持续集成。