接口测试入门
接口测试入门
目录
一、 接口测试概述 2
二、 接口测试流程 3
三、 接口测试质量评估标准 3
四、 脑图 4
五、 接口测试持续集成 4
六、 接口自动化框架 5
七、 环境搭建 5
一、接口测试概述
1 什么是接口测试:
接口测试是测试系统组件间交互的一种测试。接口测试主要用于检测外部系统与系统之间,内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
2 为什么要做接口测试:
现在很多系统前后端架构是分离的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求(绕过前端太容易了), 需要后端同样进行控制,在这种情况下就需要从接口层面进行验证。
如今系统越来越复杂,传统的靠前端测试已经大大降低了效率,而且现在我们都推崇测试前移,希望测试能更早的介入测试,那接口测试就是一种及早介入的方式。例如传统测试,得等前后端都完成你才能进行测试,才能进行自动化代码编写。 而如果是接口测试,只需要前后端定义好接口,那这时自动化就可以介入,编写接口测试自动化代码,手工测试只需要后端代码完成就可以介入测试后端逻辑而不用等待前端工作完成。
二、接口测试流程
接口测试也是属于功能测试,所以跟我们以往的功能测试流程并没有太大区别,测试流程依旧是:
1.测试接口文档(需求文档)
2.根据接口文档编写测试用例(用例编写完全可以按照以往规则来编写,例如等价类划分,边界值等设计方法)
3.执行测试,查看不同的参数请求,接口的返回的数据是否达到预期。
三、接口测试质量评估标准
- 业务功能覆盖是否完整
- 业务逻辑是否覆盖完整
- 参数验证是否达到要求(边界、等价类划分、业务规则)
- 接口异常场景覆盖是否完整(幂等\防重、并发、环境、大数据量)
- 接口覆盖率是否达到要求(覆盖接口数/系统总接口数)
- 代码覆盖率是否达到要求
- 性能指标是否满足要求(响应时间、服务器资源使用情况)
- 安全指标是否满足要求(敏感信息加密、sql注入、越权)
四、脑图
五、接口测试持续集成
对接口测试而言,持续集成自动化是核心内容,通过持自动化的手段我们才能做到低成本高收益。实现接口自动化,主要应用于回归阶段,后续还需要加强自动化的程度,包括但不限于下面的内容:
- 流程方面:在回归阶段加强接口异常场景的覆盖度,并逐步向系统测试,冒烟测试阶段延伸,最终达到全流程自动化。
- 结果展示:更加丰富的结果展示、趋势分析,质量统计和分析等
- 问题定位:报错信息、日志更精准,方便问题复现与定位。
- 结果校验:加强自动化校验能力,如数据库信息校验。
- 代码覆盖率:不断尝试由目前的黑盒向白盒下探,提高代码覆盖率。
- 性能需求:完善性能测试体系,通过自动化的手段监控接口性能指标是否正常。
六、接口自动化框架
Jmeter+ant+Jenkins
七、环境搭建