前言
一、什么是接口、接口测试
首先进行接口测试之前,先了解什么是接口
1.接口
接口:就是不同系统,或者不同模块之间进行访问、调用时,起到连接作用的部分,叫做接口
2.接口测试
接口测试:构造请求,验证接口是否符合预期结果
一般进行接口测试时,都是以接口文档为依据的,需要向对应的开发人员或者上级获取负责部分的接口文档
一个接口包括请求与响应两部分:request、response
接口文档基本要素: ① 接口名称 ② 请求的URL ③ 请求方式(GET/POST等) ④ 请求参数(参数名、是否必选、参数类型、说明) ⑤ 返回示例 ⑥ 返回参数说明(参数名、类型、说明)
为什么进行接口测试? 1、提高测试效率,降低测试成本
基于分层测试,在UI层尚未开发出来之前进行接口测试,可以更早发现问题 基于提前测试,越早发现bug,修复bug的成本就越低 基于分层测试,接口变更概率远小于UI变更概率,维护成本更低
2、提高产品开发效率 因为可以提前测试,留给UI层测试和功能系统测试阶段的bug就会减少,从而缩短从 研发到上线的项目周期
3、发现潜在的隐藏bug 接口测试可以更简单更全面的覆盖底层代码逻辑,发现隐藏的高质量bug 接口测试很容易验证后端系统对异常情况的处理能力,而UI层测试很难验证这些能力
需要考虑的测试范围: 1、业务功能(包括正常、异常场景是否实现) 2、业务规则(覆盖度是否全面,数据的进入流出是否覆盖完全) 3、参数验证(边界、业务规则是否达到要求) 4、异常场景(重复提交、并发提交、事务中断、多机环境、大数据量测试) 5、性能测试(响应时间、吞吐量、并发数、资源要求) 6、安全测试(权限验证、SQL注入等)
需要考虑的测试重点: 1、检查接口返回的数据是否与预期结果一致 2、检查接口的容错性,假如传递数据的类型错误时是否可以处理 3、接口参数的边界值,例如,传递的参数足够大或为负数时,接口是否可以正常处理 4、接口的性能,HTTP请求接口大多与后端执行的SQL语句性能、算法等 5、接口的安全性,特别是外部调用的接口尤为重要
二、进行接口测试的基本流程
1.需求获取
1,获取接口文档 2,通过接口文档获取接口信息 3,确认接口测试需求
2.测试计划编写
1,目标:确认需求、资源、方法、进度方案 2,内容:概述、测试资源、测试范围及重点、测试策略、风险评估、测试标准
3.测试用例设计、评审
1,梳理测试思路 2,分析接口文档 3,设计测试用例 4,评审测试用例
4. 测试执行
1,测试环境搭建 2,借助测试工具或者代码 3,执行接口测试用例 4,跟踪管理缺陷
5.测试报告、评估
1,分析测试结果,生成测试报告
三、接口测试思路
四、接口测试工具
接口测试的工具选择很多,下面我列举常用的几个:
postman,一般开发人员也在用,单接口的测试 jmeter,通常测试人员用来做压力、性能测试比较多 fiddler,一般进行抓包,但也可以构造请求进行接口测试 python,通过脚本方式,发送请求,验证返回结果
|