Skip to content

测试用例

测试用例

测试用例(Test Case)是为特定的目的而设计的一组测试输入、执行条件和预期的结果的文档。

它的作用其实就是为了测试是否满足某个特定需求,通过大量的测试用例来检验软件的运行效果。

测试用例是指导测试工作进行的依据,可以规划准备测试数据,是自动化测试脚本编写的依据,是测试结果的度量标准,也是分析 Bug 的标准。

测试用例当中需要包含以下内容:

  • 用例编号
  • 模块
  • 测试点
  • 优先级
  • 前提条件
  • 测试步骤
  • 期望结果
  • 实际结果

设计成为表格形式可以这样编写:

用例编号 模块 用例标题 优先级 前提条件 测试步骤 预期结果 设计方法
API_001 宠物主人搜索接口 [功能]GET /owners - 搜索存在的宠物主人 P0 系统中存在Last Name为"Davis"的宠物主人 1. 发送GET请求到/owners?lastName=Davis
2. 检查响应状态码
3. 检查响应数据格式
4. 检查返回的宠物主人信息
1. 响应状态码为200
2. 响应数据为JSON格式
3. 返回包含Last Name为"Davis"的宠物主人信息
4. 数据字段完整且正确
等价类
API_002 宠物主人搜索接口 [功能]GET /owners - 搜索不存在的宠物主人 P0 系统中不存在Last Name为"NonExistent"的宠物主人 1. 发送GET请求到/owners?lastName=NonExistent
2. 检查响应状态码
3. 检查响应数据
1. 响应状态码为200
2. 返回空数组[]
3. 响应时间小于2秒
等价类
API_003 宠物主人搜索接口 [功能]GET /owners - 不传参数搜索全部宠物主人 P1 系统中存在多个宠物主人 1. 发送GET请求到/owners
2. 检查响应状态码
3. 检查响应数据
1. 响应状态码为200
2. 返回所有宠物主人信息
3. 数据格式正确
场景法
API_004 宠物主人搜索接口 [边界]GET /owners - 搜索空字符串 P2 1. 发送GET请求到/owners?lastName=
2. 检查响应状态码
3. 检查响应数据
1. 响应状态码为200
2. 返回所有宠物主人信息
边界值
API_005 宠物主人搜索接口 [边界]GET /owners - 搜索特殊字符 P2 1. 发送GET请求到/owners?lastName=@#$%
2. 检查响应状态码
3. 检查响应数据
1. 响应状态码为200
2. 返回空数组[]
边界值
API_006 宠物主人搜索接口 [性能]GET /owners - 响应时间测试 P1 1. 发送GET请求到/owners
2. 记录响应时间
1. 响应时间小于2秒
2. 响应状态码为200
性能测试
API_007 宠物主人详情接口 [功能]GET /owners/{id} - 获取存在的宠物主人详情 P0 系统中存在ID为1的宠物主人 1. 发送GET请求到/owners/1
2. 检查响应状态码
3. 检查响应数据
1. 响应状态码为200
2. 返回ID为1的宠物主人详细信息
3. 包含所有必要字段
等价类
API_008 宠物主人详情接口 [功能]GET /owners/{id} - 获取不存在的宠物主人详情 P0 系统中不存在ID为999的宠物主人 1. 发送GET请求到/owners/999
2. 检查响应状态码
1. 响应状态码为404
2. 返回错误信息
等价类
API_009 宠物主人详情接口 [边界]GET /owners/{id} - 获取ID为0的宠物主人详情 P2 1. 发送GET请求到/owners/0
2. 检查响应状态码
1. 响应状态码为400或404
2. 返回错误信息
边界值
API_010 宠物主人详情接口 [边界]GET /owners/{id} - 获取负数ID的宠物主人详情 P2 1. 发送GET请求到/owners/-1
2. 检查响应状态码
1. 响应状态码为400
2. 返回错误信息
边界值
API_011 创建宠物主人接口 [功能]POST /owners - 创建新的宠物主人 P0 1. 准备有效的宠物主人数据
2. 发送POST请求到/owners
3. 检查响应状态码
4. 检查响应数据
1. 响应状态码为201
2. 返回创建的宠物主人信息
3. 包含自动生成的ID
4. 数据字段完整
等价类
API_012 创建宠物主人接口 [功能]POST /owners - 创建重复的宠物主人 P1 系统中已存在相同信息的宠物主人 1. 准备重复的宠物主人数据
2. 发送POST请求到/owners
3. 检查响应状态码
1. 响应状态码为400或409
2. 返回错误信息
等价类
API_013 创建宠物主人接口 [边界]POST /owners - 创建缺少必填字段的宠物主人 P1 1. 准备缺少firstName的数据
2. 发送POST请求到/owners
3. 检查响应状态码
1. 响应状态码为400
2. 返回字段验证错误信息
边界值
API_014 创建宠物主人接口 [边界]POST /owners - 创建字段长度超限的宠物主人 P2 1. 准备firstName超过100字符的数据
2. 发送POST请求到/owners
3. 检查响应状态码
1. 响应状态码为400
2. 返回字段长度验证错误信息
边界值
API_015 更新宠物主人接口 [功能]PUT /owners/{id} - 更新存在的宠物主人 P0 系统中存在ID为1的宠物主人 1. 准备更新的宠物主人数据
2. 发送PUT请求到/owners/1
3. 检查响应状态码
4. 检查响应数据
1. 响应状态码为200
2. 返回更新后的宠物主人信息
3. 数据已正确更新
等价类
API_016 更新宠物主人接口 [功能]PUT /owners/{id} - 更新不存在的宠物主人 P0 系统中不存在ID为999的宠物主人 1. 准备更新的宠物主人数据
2. 发送PUT请求到/owners/999
3. 检查响应状态码
1. 响应状态码为404
2. 返回错误信息
等价类
API_017 更新宠物主人接口 [边界]PUT /owners/{id} - 更新ID为0的宠物主人 P2 1. 准备更新的宠物主人数据
2. 发送PUT请求到/owners/0
3. 检查响应状态码
1. 响应状态码为400或404
2. 返回错误信息
边界值
API_018 删除宠物主人接口 [功能]DELETE /owners/{id} - 删除存在的宠物主人 P0 系统中存在ID为1的宠物主人 1. 发送DELETE请求到/owners/1
2. 检查响应状态码
3. 验证删除结果
1. 响应状态码为200或204
2. 返回成功信息
3. 宠物主人已被删除
等价类
API_019 删除宠物主人接口 [功能]DELETE /owners/{id} - 删除不存在的宠物主人 P0 系统中不存在ID为999的宠物主人 1. 发送DELETE请求到/owners/999
2. 检查响应状态码
1. 响应状态码为404
2. 返回错误信息
等价类
API_020 删除宠物主人接口 [边界]DELETE /owners/{id} - 删除ID为0的宠物主人 P2 1. 发送DELETE请求到/owners/0
2. 检查响应状态码
1. 响应状态码为400或404
2. 返回错误信息
边界值
API_021 接口安全测试 [安全]GET /owners - SQL注入测试 P1 1. 发送GET请求到/owners?lastName=' OR '1'='1
2. 检查响应状态码
3. 检查响应数据
1. 响应状态码为200
2. 不返回所有数据
3. 系统安全防护生效
安全测试
API_022 接口安全测试 [安全]POST /owners - XSS攻击测试 P1 1. 准备包含