接口测试流程
- 1.分析需求,产生需求文档(产品)
- 2.开发产生接口文档,测试解析接口文档
- 3.测试产生测试用例(送审)
- 4.测试执行测试用例
工具:postman,jmeter 代码:python+Request+UnitTest
- 5.测试提交、跟踪缺陷
- 6.测试生成测试报告
- 7.(可选)接口自动化持续集成
接口文档
什么是接口文档:由开发人员编写,描述接口信息的文档。开发团队按接口文档进行开发工作,并要一直维护遵守。 作用: 1.能够让前端开发与后台开发人员更好的配合,提供工作效率.(有一个统一的参考的文件) 2.项目迭代或者项目人员更迭时,方便后期人员查看和维护 3.方便测试人员进行接口测试 展现形式:
word 文档形式 Excel表格式形式 pdf文档形式
结构:
基本信息
资源路径(协议和域名在“系统信息”中)
请求方法
接口描述
请求参数
请求头:Content-Type 描述请求体的数据类型
请求体:实现该接口使用的数据几对应类型
返回数据
成功:200
错误码(自定义状态码)
码值
描述信息
接口文档解析
解析本质:从接口文档中,找出http请求所需要的数据信息 > 主要包含:请求方法,URL,请求头,请求体,响应状态码、描述
单接口测试用例分析 以“登录”为例: 请求方法:POST URL:http://ihrm-test.itheima.net/api/sys/login 请求头:Content-Type:application/json 请求体:{“mobile”:“13800000002”,“password”:“123456”} 响应状态码:200 错误码: 10000:操作成功 20001:用户名或密码错误 99999:抱歉,系统繁忙,请稍后重试
登录模块的测试点: 数值:
正向: 登录成功 反向: 用户名为空 用户名包含特殊字符、字母 用户名超过11位(12位) 用户名不足11位(10位) 用户名未注册 密码为空 密码包含特殊字符、字母 密码为1位 密码为100位 密码错误
参数:(接口测试特有)
正向: 必选参数:正确用户名+正确密码 可选参数:忽略 全部参数:正确用户名+正确密码 反向: 多参:多adb:“123” 少参:少mobile,没有用户名,正确密码 无参:没有任何参数 错误参数:adc:13912345648,password:123456
业务场景测试用例 用户怎么用,怎么设计业务 用最少的测试用例,尽量覆盖最多的接口 分析测试点 针对“员工管理”业务场景 登录–添加员工-查询员工-修改员工–再次查询–删除员工–查询员工列表 登录: 请求方法:POST URL:http://ihrm-test.itheima.net/api/sys/login 请求头:Content-Type:application/json 请求体:{“mobile”:“13800000002”,“password”:“123456”} 预期结果: 响应状态码:200 错误码: 10000:操作成功 20001:用户名或密码错误 99999:抱歉,系统繁忙,请稍后重试
-
添加员工: 请求方法:POST URL:{协议+域名}/api/sys/user 请求头:Content-Type:application/ Authorizatin:ba720eb1-6beb-4286-8fb8-7d73757ce87c (具体数据 来源 登录成功返回的响应体中的data的值) 请求体(请求数据): {“username”:“苏素”, “mobile”:“13899991111”, “timeOfEntry”:“2022-04-21”, “formOfEmployment”:1, “workNumber”:“123”, “departmentName”:null, “departmentId”:“1514179654599147520”, “correctionTime”:“2022-04-20T16:00:00.000Z”} 预期结果: 状态码:200 {“success”:true,“code”:10000,“message”:“操作成功”,“data”:{“id”:“113749504”}} -
查询员工: 请求方法:POST URL:{协议+域名}/api/sys/user 请求头:Content-Type:application/ Authorizatin:ba720eb1-6beb-4286-8fb8-7d73757ce87c (具体数据 来源 登录成功返回的响应体中的data的值) 请求体(请求数据): 无 返回数据: 状态码:200 {“success”:true,“code”:10000,“message”:“操作成功”,“data”:{“所查询员工的详细信息”}}
|