接口测试用例设计
文章目录
一、接口测试的测试点
接口测试质量维度
二、功能测试【主要学习】
- 单接口功能测试:
- 一个单独的业务,就对一个独立的接口。如:登录业务,对应登录接口。
- 业务场景功能测试:
- 多个接口被连续调用。 (模拟用户的实际使用场景)
三、性能测试
- 响应时长:从发送请求到接收到服务器回发响应包所经历的时间。
- 错误率:服务器运行出错的概率
- 吞吐量:服务器单位时间内,处理请求的数量。
- 服务器资源利用率: cpu、 内存、网络、磁盘等硬件资源的占用率。
四、安全测试
- 攻击安全:木马、病毒…
- 由具备专业安全技术,会使用专业安全测试工具的安全测试工程师负责。
- 业务安全:
- 必须登录,才能访问用户数据。
- 敏感数据加密存储。
- SQL 注入
五、接口用例设计方法
5.1 单接口测试
一个单独的业务,就对一个独立的接口。如:登录业务,对应登录接口。注册业务,对应注册接口。支付业务,对应支付接口。
- 正向:
- 必选参数。所有必选项,给正确数据**(P0)**
- 组合参数(必选+非必填组合)。所有必选+任意可选,给正确数据。(P2/P3)
- 全部参数。所有必选+所有可选。给正确数据。(P1)
- 反向:
- 功能异常:数据格式正确,不能履行接口功能。(P1)
- 数据异常:数据格式不正确(空值、特殊字符、汉字、字母、长度、范围—等价类、边界值) (P2)
- 参数异常:(P3)
- 多参:多出必选参数
- 少参:缺少必选参数
- 无参:没有指定参数
- 错误参数:参数名错误。
5.2业务场景测试
一定在 单接口 测试 之后!
-
尽量模拟用户实际使用场景。
-
尽量用最少的用例,覆盖最多的接口请求。
-
一般情况下,覆盖正向测试即可。
-
从功能业务用例转化 P0
- 针对业务功能用例中操作步骤,分析对应的接口请求
优先级:P0 > P1 > P2 > P3
单接口测试用例
分析测试点
登录
需求:
已注册正确的用户 名和密码,登录成功
用户名或密码错误,登录失败,提示”用户名或密码错误“
-
正向:
- 登录成功
-
反向:
- 功能异常:
- 手机未注册
- 密码错误
- 数据异常(先等价类再边界值):
- 手机号为空
- 手机号含有字母、特殊字符
- 手机号12位
- 手机号10位
- 密码为空
- 密码有字母、特殊字符
- 密码1位
- 密码10位
- 参数异常:
- 多参:多出 abc
- 少参:缺少-mobile
- 无参:
- 错误参数:修改 mobile 为 abc
- 功能异常:
用例编写示例:
员工添加
需求:
必填项:用户名(数字+字母),手机号(11位, 数字,唯一),工号(数字1-20位)
非必填项:默认部门:人事部。聘用形式:正式1/非正式2
-
正向
- 必选参数
- 用户名+手机号+工号
- 组合参数
- 用户名+手机号+工号+聘用形式
- 全部参数
- 全部必填和全部非必填
- 必选参数
-
反向
- 功能异常
- 手机号已存在
- 员工号已存在
- 入职时间 晚于 转正时间
- 数据异常
- 用户名为空
- 用户名纯 数字
- 用户名纯 字母
- 用户名为数字+字母+特殊字符
- 手机号为空
- 手机号非1开头
- 手机号含有数字、字母、特殊字符
- 10位手机号
- 12位手机号
- 工号为空
- 工号含有数字、字母、特殊字符
- 21位工号
- 1位工号
- 6位工号
- 入职时间格式不正确
- 聘用形式填3
- 聘用形式含有数字、字母、特殊字符
- 部门id 不存在
- 部门id 含有数字、字母、特殊字符
- 参数异常
- 多参:多 abc
- 少参:少 username
- 无参:缺少所有必填项
- 错误参数:workNumber 参数名错,填写为 abc
- 功能异常
编写用例:
修改请求头 中的令牌 :Authorization :登录成功获取的令牌
查询员工
需求:
查询存在的员工id (数字),返回该员工信息
使用资源路径: /api/sys/user/:target 包含**:target 为“路径参数"**。用来指代待查询的员工id
设计测试点:
●员工id存在
●员工id不存在
●没有指定员工查询
在此之上的 URL缺少{} 应该为:{协议+域名}
修改员工接口
需求: 13800000002 123456
管理员可以修改。员工id (数字),修改部门id必须存在
正向
姓名 + 密码 + 部门id + 部门名称
反向
部门id 不存在
部门id 错误
删除员工接口
需求:
管理员可以删除
将bs_ user表的is_ delete字段设置为1, is _delete标识是否删除[0:未删除; 1:已删除]
伪删除说明:
不使用SQL语句delete,真正删除指定记录。而使用update将指定字段值修改,代表这条记录被“删除”了
业务场景测试用例
分析测试点
需求:
新增员工一> 查询员工一>修改员工姓名一> 删除该员工
指导思想:
- 模拟用户实际使用
- 用较少的测试用例,覆盖更多接口,
- 测试正向即可。
登录 - 添加员工 - 查询员工 - 修改员工 - 删除员工 - 查询员工列表