Install
openclaw skills install test-case-design-senior具备高级测试用例设计能力,能输出覆盖复杂页面跳转、路由参数及多页面联动的标准化高质量测试用例。
openclaw skills install test-case-design-senior具备高级功能测试工程师的测试用例设计能力,可输出结构标准、覆盖率高、逻辑清晰、考虑全面的高质量测试用例;支持页面跳转、详情页跳转、关联页面跳转、路由参数、页面联动等复杂场景;严格按照标准模板输出,包含测试用例编号、测试类型、功能模块、子功能、测试标题、用例级别、预置条件、测试步骤、预期结果、实际结果等完整字段,满足企业级测试规范与质量要求。
| 测试用例编号 | 测试类型 | 功能模块 | 子功能 | 测试标题 | 用例级别 | 预置条件 | 测试步骤 | 预期结果 | 实际结果 |
|---|---|---|---|---|---|---|---|---|---|
| TC_XXX_001 | 功能测试 | 用户管理 | 登录 | 验证正确的用户名和密码可以成功登录 | P0 | 1. 用户已注册<br>2. 网络正常 | 1. 打开登录页面<br>2. 输入正确的用户名<br>3. 输入正确的密码<br>4. 点击登录按钮 | 1. 跳转至首页<br>2. 显示用户信息 | 待执行 |
TC_{模块缩写}_{功能序列号}_{场景后缀}
示例:
TC_USER_LOGIN_001_NORMAL - 用户模块 - 登录功能 - 第 001 条 - 正常场景TC_ORDER_DETAIL_002_JUMP - 订单模块 - 详情页 - 第 002 条 - 跳转场景TC_PRODUCT_LINK_003_CROSS - 商品模块 - 关联页面 - 第 003 条 - 跨页面联动| 级别 | 说明 | 适用场景 |
|---|---|---|
| P0 | 关键用例 | 核心业务流程、阻碍系统正常使用的问题、主流程跳转 |
| P1 | 重要用例 | 主要功能、影响用户体验的问题、详情页跳转、权限校验 |
| P2 | 一般用例 | 次要功能、不影响主体流程的问题、关联页面跳转 |
| P3 | 可选用例 | 边缘场景、美化优化相关、异常参数跳转 |
当用户提供以下类型的请求时,此技能自动激活:
为生成高质量的测试用例,尽量提供以下信息:
✅ DO - 推荐做法
❌ DON'T - 避免做法
## 订单模块 - 商品下单 - P0
### TC_ORDER_CREATE_001 正常下单流程
**测试类型**: 功能测试
**功能模块**: 订单管理
**子功能**: 商品下单
**用例级别**: P0
**预置条件**:
1. 用户已登录且账户余额充足
2. 商品库存大于 0
3. 收货地址已配置
**测试步骤**:
1. 浏览商品详情页
2. 选择规格型号(如有)
3. 点击"立即下单"按钮
4. 确认订单信息(商品、数量、价格、收货地址)
5. 选择支付方式
6. 点击"提交订单"
7. 完成支付
**预期结果**:
1. 进入订单确认页
2. 订单金额计算准确(含运费优惠)
3. 订单创建成功,返回订单号
4. 库存扣减正确
5. 收到订单 confirmation 通知
**实际结果**: 待执行
## 用户模块 - 注册 - P1
### TC_USER_REGISTER_002 邮箱格式错误
**测试类型**: 功能测试
**功能模块**: 用户管理
**子功能**: 用户注册
**用例级别**: P1
**预置条件**: 访问注册页面
**测试步骤**:
1. 在邮箱输入框输入不完整格式的邮箱(如 abc@com)
2. 输入合法的密码和确认密码
3. 点击"注册"按钮
**预期结果**:
1. 邮箱字段显示红色错误提示
2. 提示内容明确告知格式要求
3. 无法继续提交表单
4. 控制台无报错日志
**实际结果**: 待执行
## 商品模块 - 列表跳详情 - P0
### TC_PRODUCT_LIST_001 正常跳转详情页
**测试类型**: 路由测试
**功能模块**: 商品管理
**子功能**: 列表跳详情
**用例级别**: P0
**预置条件**:
1. 用户已登录
2. 商品列表页有数据
**测试步骤**:
1. 打开商品列表页
2. 点击任意商品卡片/名称
3. 等待页面跳转完成
4. 校验详情页展示内容
**预期结果**:
1. 成功跳转到商品详情页
2. URL 包含正确的商品 ID(如 /product/12345)
3. 详情页展示的商品信息与列表一致
4. 商品图片、价格、库存等关键信息正确
5. 详情页功能按钮(购买、收藏等)可用
**实际结果**: 待执行
## 订单模块 - 详情页 - P1
### TC_ORDER_DETAIL_002 路由参数缺失
**测试类型**: 路由测试
**功能模块**: 订单管理
**子功能**: 详情页路由
**用例级别**: P1
**预置条件**: 用户已登录
**测试步骤**:
1. 手动访问订单详情页 URL,但省略订单 ID 参数(如 /order/detail?id=)
2. 观察页面反应
**预期结果**:
1. 页面显示错误提示"订单 ID 不能为空"
2. 或自动跳转到订单列表页
3. 不出现白屏或系统错误
**实际结果**: 待执行
---
### TC_ORDER_DETAIL_003 路由参数非法
**测试类型**: 安全测试
**功能模块**: 订单管理
**子功能**: 详情页路由
**用例级别**: P1
**预置条件**: 用户已登录
**测试步骤**:
1. 手动访问订单详情页 URL,传入非法订单 ID(如 /order/detail?id=abc)
2. 观察页面反应
**预期结果**:
1. 页面显示"订单不存在"或类似提示
2. 不展示任何订单详情信息
3. 不提供越权访问其他订单的入口
**实际结果**: 待执行
## 订单模块 - 用户关联 - P1
### TC_ORDER_USER_001 订单页跳用户详情页
**测试类型**: 联动测试
**功能模块**: 订单管理
**子功能**: 关联页面跳转
**用例级别**: P1
**预置条件**:
1. 用户已登录
2. 存在已完成的订单
**测试步骤**:
1. 打开订单详情页
2. 点击买家信息区域的用户名称/头像
3. 等待页面跳转
4. 校验跳转目标页面
**预期结果**:
1. 成功跳转到用户详情/店铺页
2. 用户信息与订单中的买家信息一致
3. URL 包含正确的用户 ID
4. 用户页面功能正常(关注、发消息等)
**实际结果**: 待执行
---
## 订单模块 - 状态同步 - P1
### TC_ORDER_USER_002 订单状态变更后列表同步
**测试类型**: 联动测试
**功能模块**: 订单管理
**子功能**: 状态同步
**用例级别**: P1
**预置条件**:
1. 用户已登录
2. 存在待发货订单
**测试步骤**:
1. 打开订单列表页,记录订单状态
2. 点击进入订单详情页
3. 在详情页执行发货操作
4. 返回列表页(浏览器后退或点击面包屑)
5. 检查订单列表中该订单状态
**预期结果**:
1. 列表页订单状态已更新为"已发货"
2. 或页面提示刷新后显示最新状态
3. 数据与详情页操作结果一致
**实际结果**: 待执行
## 系统模块 - 权限控制 - P0
### TC_SYS_AUTH_001 未登录访问详情页
**测试类型**: 安全测试
**功能模块**: 权限管理
**子功能**: 登录拦截
**用例级别**: P0
**预置条件**: 用户未登录
**测试步骤**:
1. 直接访问需要登录的详情页 URL(如 /order/detail?id=123)
2. 观察页面跳转
**预期结果**:
1. 自动跳转到登录页
2. 登录成功后能回到原访问页面(携带 redirect 参数)
3. 不泄露任何订单信息
**实际结果**: 待执行
---
### TC_SYS_AUTH_002 越权访问他人订单
**测试类型**: 安全测试
**功能模块**: 权限管理
**子功能**: 越权访问
**用例级别**: P0
**预置条件**: 用户 A 已登录
**测试步骤**:
1. 获取用户 B 的订单 ID
2. 用户 A 访问用户 B 的订单详情页(/order/detail?id=用户 B 订单 ID)
3. 观察页面反应
**预期结果**:
1. 显示"无权访问"或"订单不存在"
2. 不展示任何用户 B 的订单信息
3. 记录安全日志
**实际结果**: 待执行
## 通用模块 - 浏览器历史 - P2
### TC_BROWSER_BACK_001 详情页返回列表
**测试类型**: 路由测试
**功能模块**: 浏览器历史管理
**子功能**: 回退功能
**用例级别**: P2
**预置条件**:
1. 用户在商品列表页
2. 列表有分页或筛选条件
**测试步骤**:
1. 在列表页设置筛选条件(如价格区间、品牌)
2. 点击某个商品进入详情页
3. 使用浏览器后退按钮返回
4. 检查列表页状态
**预期结果**:
1. 返回列表页而非首页
2. 之前的筛选条件保持
3. 滚动位置保持或合理重置
4. 列表数据未丢失
**实际结果**: 待执行
等价类划分示例:
边界值分析示例:
判定表示例:
| 条件 | A(有优惠券) | B(满 100 元) | C(可用) | 结果 |
|---|---|---|---|---|
| 1 | Y | Y | Y | 可以使用 |
| 2 | Y | Y | N | 不可用(已过期) |
| 3 | Y | N | Y | 不可用(不满足门槛) |
| 4 | N | Y/Y | Y/Y | 不适用 |
| 数据类型 | 有效范围 | 典型边界 | 异常示例 |
|---|---|---|---|
| 整数 | -2147483648 到 2147483647 | -1, 0, 1, 最大值,最大值 +1 | 小数、字母 |
| 浮点数 | 根据精度要求 | 0.0, 0.1, 最小正数 | 无穷大、NaN |
| 字符串 | 1-200 字符 | 0 字符、200 字符、201 字符 | null、emoji、特殊符号 |
| 日期 | 1970-01-01 到 2099-12-31 | 前一天、当天、后一天 | 未来年份、非法日期 |
| 布尔值 | true/false | - | 1, 0, "true", "" |
| 枚举 | predefined values | 首项、末项、中间项 | 不在定义范围内的值 |
| 路由参数 | 符合 URL 规范 | 正常 ID、空值、边界值 | 特殊字符、SQL 注入、XSS |