【接口测试】接口测试用例设计
文章目录
- 1. 测试点
- 功能测试
- 性能测试
- 安全测试
- 2. 与手工设计不同之处
- 3. 单接口测试用例
- 4. 业务场景测试用例
- 分析测试点
- 添加员工
- 查询员工
1. 测试点
功能测试
- 单接口功能:
- 手工测试中的单个业务模块,一般对应一个接口。
- 登录业务 ——> 登录接口
- 加入购物车业务 ——> 加入购物车接口
- 订单业务 ——> 订单接口
- 支付业务 ——> 支付接口
- 借助工具、代码。绕开前端界面,组织接口所需要的数据,展开接口测试。
- 手工测试中的单个业务模块,一般对应一个接口。
- 业务场景功能:
- 按照用户实际 使用场景,梳理 接口业务 场景。
- 组织业务场景时,一般只需做 正向 测试即可(与手工一致)。
- 一般建议用最少的 用例 覆盖最多的业务场景。
- 登录 —— 搜索商品 —— 加购物车 —— 下单 —— 支付 —— 评价
性能测试
- 响应时长
- 吞吐量
- 并发数量
- 服务器资源利用率
安全测试
- 攻击安全。 —— 与测试工程师无关。
- 业务安全。 —— 测试的方向。
- 敏感数据是否加密
- SQL注入:在用户能输入数据的位置,写入SQL语句。
- SQL注入安全,用户恶意写入的SQL语句,不会执行,查询数据库!
2. 与手工设计不同之处
- 手工测试,测写入到输入框中的数据是否正确。接口测试测 参数 对应的 参数值 是否正确。
- 接口测试,不单单针对 参数值进行,还可以针对 参数本身 进行测试。
- 正向参数:
- 必选参数:所有的 必选(必填)都包含。
- 组合参数:所有的 必选 + 任意一个或多个可选参数。
- 全部参数:所有的 必选 + 所有的 可选参数
- 反向参数:
- 多参:多出一个或多个必选参数 (可以任意指定)
- 少参:缺少一个或多个必选参数。
- 无参:没有必选参数。
- 错误参数:参数名输入错误。
3. 单接口测试用例
手工 测试用例文档 8 大要素:
编号、用例名称(标题)、模块、优先级、预置条件、测试数据、操作步骤、预期结果
接口 测用例文档 10 要素:
- 编号、用例名称(标题)、模块、优先级、预置条件、请求方法、URL、请求头、请求体(请求数据)、预期结果
分析接口文档,以 “登录接口” 为例: - 请求方法:post
- URL: “系统信息” 中的 协议和域名 + /api/sys/login
- 请求头:Content-Type : application/json
- 请求体:{“mobile”:“13800000002”,“password”:“123456”}
- 预期结果: {“success”:true,“code”:10000,“message”:“操作成功!”,“data”:“f5050a1b-7919-444c-9ec4-3c1a7286536d”}
- data:值为登录成功生成的 令牌数据。该数据 会定时变化。
登录模块的接口测试用例测试点:
- data:值为登录成功生成的 令牌数据。该数据 会定时变化。
- 数值
- 正向:
- 登录成功
- 反向:
- 用户名为空
- 用户名包含特殊字符、字母
- 用户名超过11位(12位)
- 用户名不足11位(10位)
- 用户名未注册
- 密码为空
- 密码包含特殊字符、字母
- 密码为1位
- 密码为100位
- 密码错误
- 正向:
- 参数(接口测试特有)
- 正向:
- 必选参数:正确用户名 + 正确密码
- 组合参数:忽略
- 全部参数:正确用户名 + 正确密码
- 反向:
- 多参:多 abc:“123”
- 少参(少mobile):没有用户名,正确密码
- 无参:没有任何参数
- 错误参数(手机号参数名错误):abc:1381234567, password:”123456”
分析接口文档,以 “登录接口” 为例:
- 正向:
- 请求方法:post
- URL: “系统信息” 中的 协议和域名 + /api/sys/login
- 请求头:Content-Type : application/json
- 请求体:{“mobile”:“13800000002”,“password”:“123456”}
- 预期结果: {“success”:true,“code”:10000,“message”:“操作成功!”,“data”:“f5050a1b-7919-444c-9ec4-3c1a7286536d”}
- data:值为登录成功生成的 令牌数据。该数据 会定时变化。
登录模块的接口测试用例测试点:
- data:值为登录成功生成的 令牌数据。该数据 会定时变化。
- 数值
- 正向:
- 登录成功
- 反向:
- 用户名为空
- 用户名包含特殊字符、字母
- 用户名超过11位(12位)
- 用户名不足11位(10位)
- 用户名未注册
- 密码为空
- 密码包含特殊字符、字母
- 密码为1位
- 密码为100位
- 密码错误
- 正向:
- 参数(接口测试特有)
- 正向:
- 必选参数:正确用户名 + 正确密码
- 组合参数:忽略
- 全部参数:正确用户名 + 正确密码
- 反向:
- 多参:多 abc:“123”
- 少参(少mobile):没有用户名,正确密码
- 无参:没有任何参数
- 错误参数(手机号参数名错误):abc:1381234567, password:”123456”
- 正向:
4. 业务场景测试用例
- 用户怎么用,怎样设计业务。
- 用最少的测试用例,尽量覆盖最多的接口。
分析测试点
针对 “员工管理” 业务场景:
- 登录 —— 添加员工 —— 查询员工 —— 修改员工 —— 再次查询 —— 删除员工 —— 查询员工列表
添加员工
- 请求方法:post
- URL: {协议+域名}/api/sys/user
- 请求头:
- Content-Type: application/json
- Authorization: Bearer f5050a1b-7919-444c-9ec4-3c1a7286536d (具体数据 来源 登录成功返回的 响应体中的 data的值)
- 请求体(请求数据):{“username”:“爱因斯坦”,“mobile”:“17289432100”,“timeOfEntry”:“2021-07-12”,“formOfEmployment”:1,“departmentName”:“测试0607”,“departmentId”:“1412421425733664768”,“workNumber”:“234”,“correctionTime”:“2021-07-30T16:00:00.000Z”}
- 预期结果:
- 状态码:200
- {“success”:true,“code”:10000,“message”:“操作成功!”, “data”:{“id”:“113749504”}}
查询员工
- 请求方法:GET
- URL: {协议+域名}/api/sys/user/:target
- 请求头:
- Content-Type: application/json
- Authorization: Bearer f5050a1b-7919-444c-9ec4-3c1a7286536d (具体数据 来源 登录成功返回的 响应体中的 data的值)
- 请求体:
- 无
- 返回数据:
- 状态码:200
- {“success”: true,
- “code”: 10000,
- “message”: “操作成功!”,
- “data”: { 所查询的员工的详细信息} }
【接口测试】接口测试用例设计相关推荐
- 软件测试 接口测试 接口测试的必备条件 接口测试用例设计 HTTP协议基础 Postman
文章目录 1 接口测试概述 1.1 接口测试的定义 1.2 接口测试的范围和适用场合 2 接口测试的必备条件 2.1 接口测试的要求 2.2 标准和规范的接口文档 2.3 如何获取接口信息 3 接口测 ...
- 【理论了解】接口测试简介以及接口测试用例设计思路
接口测试简介 1.什么是接口 接口就是内部模块对模块,外部系统对其他服务提供的一种可调用或者连接的能力的标准,就好比usb接口,他是系统向外接提供的一种用于物理数据传输的一个接口,当然仅仅是一个接口是 ...
- 软件测试之接口测试用例设计,全网独一份
1.接口测试用例设计简介 我们对系统的需求分析完成之后,即可设计对应的接口测试用例,然后用接口测试用例进行接口测试.接口测试用例的设计也需要用到黑盒测试方法,其与功能测试用例设计的方法类似,接口测试用 ...
- 接口测试用例设计的一点总结
背景 最近项目中也一直在推动接口测试,中途也遇到很多的问题:从最开始的接口文档管理,接口测试框架的选型,到后续接口测试用例的维护问题.最近在想接口测试的一个覆盖度问题.谈到覆盖度,又得回到接口测试的用 ...
- 软件测试接口测试用例设计
接口测试用例设计 随着测试分析和分层测试的深化,"接口测试"出现在我们视野的频次越来越高.那么接口测的用例设计常用哪些方法呢?本文将详细描述. 接口测试 1.1 接口测试 接口: ...
- 全网最详细软件测试接口测试用例设计-怎么编写-模板(最详全)
目录:导读 一.前言 1.接口测试 2.接口测试发现的典型问题 二.接口测试用例设计 1.针对输入设计 1.1.数值型 1.2.字符串型 1.3.数组或链表类型 三.针对逻辑设计 1.约束条件分析 2 ...
- (转)接口测试用例设计
随着测试分析和分层测试的深化,"接口测试"出现在我们视野的频次越来越高.那么接口测的用例设计常用哪些方法呢?本文将详细描述. 1 接口测试 1.1 接口测试 接口:主要是子模块 ...
- 【转】接口测试用例设计
文章图片参考源地址: http://url.cn/5ZM37wg 随着测试分析和分层测试的深化,"接口测试"出现在我们视野的频次越来越高.那么接口测的用例设计常用哪些方法呢?本文将 ...
- (转)【腾讯 TMQ】 接口测试用例设计
导语 这是我在其他的开源社区看到的一篇分享帖子.这篇文章的目的只是为大家提供一个思路,但是实现成本太高了,因为一个接口设计的接口测试用例很多,一般公司的接口数量几百到上千不等,每一个接口都设计这么多测 ...
- (转)接口测试用例设计(详细干货)
随着测试分析和分层测试的深化,"接口测试"出现在我们视野的频次越来越高.那么接口测的用例设计常用哪些方法呢?本文将详细描述. 1 接口测试 1.1 接口测试 接口:主要是子模块 ...
最新文章
- Nosql数据一致性技术概要
- Selenium 反反爬检测方案(利用js隐藏浏览器特征)
- linux ubuntu/deepin安装tengine(nginx增强版)2.3.2
- JSON.stringify() / JSON.parse()
- html 手写字效果,canvas画布实现手写签名效果的示例代码
- cmd进入python环境_python2和python3同时存在,如何CMD中进入不同的环境
- JVM调优-GC参数
- 完全卸载sql2005
- CentOS yum的详细使用方法
- 一步一步教你使用AgileEAS.NET基础类库进行应用开发-基础篇-演示ORM中的查询
- 55种数据可视化开源工具_8种出色的开源数据可视化工具
- jquery修改a标签的href链接和文字
- ajax常见特效,用ajax实现正在载入的特效-Ajax编程
- Windows 10 下 转移MySQL 8.0的数据库文件夹(靠谱版)
- cloudera manager安装使用
- SpringBoot系列(8):SpringBoot中的MVC支持【组件型注解、请求和参数型注解】详解
- mtk flashtools工具回读镜像文件system.img
- Abnova循环肿瘤DNA丨全血分离,基因组DNA萃取分析
- mongodb意外断电,非正常关闭, 造成不可启动, 日志出现WT_ERROR: non-specific WiredTiger error, terminating
- ANN之乘积量化PQ