测试用例设计与编写技能
一、技能概述
本技能提供完整的测试用例设计方法论、编写规范和实战指南,帮助生成高质量、可执行的测试用例。
二、目录结构
test-case-design/
├── SKILL.md # 本文件:工作流编排与方法概要(触发即加载)
├── references/ # 知识库(按需加载)
│ ├── design_methods.md # 设计方法详解(6种方法 + 用例要素 + 质量标准)
│ ├── system_testing.md # 系统专项测试要点指南(权限/同步/字典/审批/表单)
│ ├── practical_scenarios.md # 实战场景落地指南(单功能/复杂流程/无需求/表单测试)
│ ├── testing_mindset.md # 测试思维与能力提升路径
│ ├── templates.md # 测试用例模板(标准/表单/审批流程)
│ └── business_rules.md # 业务规则模板(⚠️ 用户必须补充自己系统的规则)
知识库分层说明
| 层级 | 文件 | 性质 | 更新频率 |
|---|---|---|---|
| 方法论层 | design_methods.md templates.md testing_mindset.md practical_scenarios.md |
通用测试方法,与具体系统无关 | 低,方法论稳定 |
| 框架层 | system_testing.md |
专项测试通用框架,含用户补充提示 | 中,按需调整 |
| 业务规则层 | business_rules.md |
用户系统专属规则,必须自行填充 | 高,随迭代更新 |
> ⚠️ 关键提醒:business_rules.md 是本技能能否产出高质量用例的前提。通用方法论 + 你的业务规则 = 精准用例。请务必在使用前补充完整。
三、工作流编排
步骤 1:需求理解与测试点提取
- 解读需求文档,明确功能流程、交互规则、边界约束
- 还原真实用户场景,区分核心功能与辅助功能
- 拆解可落地的测试点,对模糊需求及时沟通确认
- 加载
references/system_testing.md检查是否有匹配的专项测试维度
步骤 2:设计方法选型
根据测试场景选择适配方法(详见 references/design_methods.md):
| 场景特征 | 推荐方法 |
|---|---|
| 输入框/数值范围校验 | 等价类划分 + 边界值分析 |
| 多条件组合逻辑 | 判定表驱动法 |
| 业务流程端到端 | 场景设计法 |
| 回归/风险补测 | 错误推测法 |
| 多因素组合爆炸 | 正交试验法 |
| 无需求文档应急 | 全维度万能测试法 |
步骤 3:用例编写
- 先搭建整体测试框架,再延伸子模块、子测试点
- 核心功能颗粒度细化,辅助功能适当收敛
- 按规范填写用例要素(详见
references/templates.md) - 按业务重要性划分优先级(P0/P1/P2)
- 加载
references/practical_scenarios.md参考实战落地模式
步骤 4:✋ 人工卡点 — 测试点评审
> 测试点廉价、用例昂贵。 在进入用例编写前,组织产品、开发、测试人员评审测试点清单,低成本纠偏。
步骤 5:用例评审与迭代
- 评审核心聚焦:需求覆盖率、场景完整性、逻辑合理性、可执行性
- 评审后整理修改意见,查漏补缺
- 需求变更后第一时间同步更新用例
四、核心设计方法概要
> 以下为方法概要,详细步骤与示例见 references/design_methods.md。
4.1 等价类划分法
将输入域划分为有效/无效等价类,选取代表性数据精简用例。适用:输入框校验、数值范围、参数合法性。
4.2 边界值分析法
针对输入/输出边界设计用例,覆盖临界场景。适用:长度限制、数值范围、时间区间、数量上限。
4.3 判定表驱动法
基于多条件组合与输出结果的对应关系构建规则表。适用:多条件组合逻辑、复杂业务规则。
4.4 错误推测法
基于缺陷经验和高频风险点针对性设计用例。适用:回归测试、核心功能风险补测。
4.5 场景设计法
梳理业务流程,拆分主流程与分支流程。适用:复杂业务系统、多步骤操作、端到端闭环。
4.6 正交试验法
通过正交表从全量组合中选取代表性点,均衡覆盖。适用:多因素多水平组合,避免用例爆炸。
4.7 全维度万能测试法
从功能/性能/界面/兼容/易用/安全全维度覆盖。适用:无需求文档的应急测试。
五、用例编写规范概要
> 以下为规范概要,详细要素说明见 references/design_methods.md,模板见 references/templates.md。
核心要素
| 要素 | 规范 |
|---|---|
| 用例编号 | 项目缩写-模块缩写-功能缩写-序号,如 AUTH-LOGIN-001 |
| 用例标题 | 模块_功能_测试场景,如 登录_正确账号密码_成功登录 |
| 前置条件 | 执行前必须满足的环境、数据、权限等条件 |
| 测试步骤 | 按操作顺序分步描述,每步仅一个动作 |
| 预期结果 | 明确系统应有的响应,一条用例对应一个核心预期 |
| 优先级 | P0(核心主流程)/ P1(重要功能)/ P2(辅助边缘) |
质量评判标准
具体无二义 · 针对性强 · 可复现 · 数据完整 · 高覆盖率 · 可维护
六、系统专项测试要点
> 以下为概要,详细指南见 references/system_testing.md,你系统的专属规则见 references/business_rules.md。
| 专项维度 | 核心测试点 |
|---|---|
| 权限体系 | 多级权限数据隔离、操作权限校验、跨级操作关联 |
| 数据同步 | 审批同步时效性/准确性、定时任务同步完整性 |
| 字典值与配置 | 开关字典权限约束、时间字典边界点、数据字典引用限制 |
| 审批流程 | 发起/撤回/审批操作/会审/前置表单/返回指定人/审批完成 |
| 表单测试 | 基础控件校验、联动逻辑、提交规则、异常容错 |
七、使用示例
7.1 编写功能测试用例
用户需求:为"用户登录"功能编写测试用例
设计方法:等价类划分 + 边界值分析
| 用例编号 | 用例标题 | 优先级 |
|---|---|---|
| AUTH-LOGIN-001 | 登录_正确账号密码_成功登录 | P0 |
| AUTH-LOGIN-002 | 登录_错误密码_登录失败 | P0 |
| AUTH-LOGIN-003 | 登录_空账号_校验拦截 | P1 |
| AUTH-LOGIN-004 | 登录_空密码_校验拦截 | P1 |
| AUTH-LOGIN-005 | 登录_账号不存在_提示错误 | P1 |
7.2 编写审批流程测试用例
功能需求:测试"业务审批"流程
包含:发起审批、会审、返回整改、前置表单
测试场景覆盖:正常审批通过 · 返回整改后重新发起 · 终止审批 · 会审全部通过后流转 · 前置表单填写后审批 · 未审批前撤回