1.接口测试工具
由于我们项目前后端调用主要是基于http协议的接口,所以测试接口时主要是通过工具或代码模拟http请求的发送与接收。平常用的多的工具有Jmeter,Postman,soapUI等。
2.接口测试3w1h
why--为什么要做接口测试:
接口:application program interface:API接口。主要用来传输数据。
接口测试:接口测试是测试系统组件间接口的一种测试,主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
服务级别的接口测试实际是功能测试。
平常我们写一个自动化demo很简单,但是在实际业务中却不实用,自己也有无从下手的感觉。如今的系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,所以就要做接口测试。同时,接口测试相对容易实现自动化持续集成,且相对UI自动化也 比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。所以我们可以自己编写满足业务的脚本。
when--什么时候做接口测试:
测试流程:单元测试(开发完成)--集成测试(接口测试阶段)--系统测试(功能测试阶段)--验收/回归测试(测试回归,产品验收)
what--接口测试可以做什么:
输入/输出测试:请求数据的正确性、返回数据的正确性
逻辑功能测试:接口本身逻辑、接口逻辑交互
接口稳定性测试:健壮性(异常测试)、安全性
how--怎么做接口测试:
数据:构造初始数据、清理测试数据
请求接口:发包(调用接口)、收包
校验结果:解析结果,校验(断言)
3.接口测试用例
功能测试用例编写方法:
- 边界值、等价类
- 逻辑覆盖、路径覆盖
- 错误推断、因果图、判定表、正交实验、场景测试
接口测试用例编写方法:
- 边界值、等价类
- 逻辑覆盖
- 异常测试
- 场景设计
边界值:大小边界:【1,100】 长度边界:字符串1-64位之类的
等价类:基于需求而言,有效等价类:需求规定的正常情况
无效等价类:需求规定的异常情况
逻辑覆盖:功能点覆盖
异常测试:针对接口的一些非法输入
场景设计:根据特定需求设计的业务流程