第4章 测试用例设计原则:等价类、边界值、正交表
章节核心:等价类划分减少冗余,边界值分析暴露临界缺陷,正交表以最少组合覆盖多因子交互。三者组合构成DVT阶段测试用例设计的三大基础方法。
4.1 适用场景
| 方法 | 适用场景 |
|---|---|
| 等价类划分 | 输入数据离散或取值范围明确,需降低用例数量但仍保证覆盖率 |
| 边界值分析 | 存在数值边界、容量极限、时间临界条件,边界处缺陷密度最高 |
| 正交表 | 多因子多水平交互测试,需系统化组合以最小用例数覆盖主要交互 |
4.2 前置条件
- 已完成测试需求分析,明确被测功能的输入域、输出域
- 取得被测模块的详细设计文档或需求规格说明书
- 已识别关键质量属性(性能、安全、兼容等)中涉及的多因子场景
- 测试环境已搭建,可执行指定边界和等价类下的验证
4.3 操作步骤
步骤 1 – 等价类划分
- 针对每个输入条件,识别有效等价类(合法输入)和无效等价类(非法输入)。
- 为每个有效等价类设计一个测试用例,覆盖所有有效等价类。
- 为每个无效等价类单独设计测试用例(确保一次只触发一个无效等价类)。
- 汇总形成等价类测试用例表。
步骤 2 – 边界值分析
- 确定每个等价类的边界点:最小值、最大值、略小于最小值、略大于最大值。
- 对于循环或有序集合,补充内边界点(如数组下标0、length-1)。
- 将每个边界点与对应等价类结合,生成边界值测试用例。
- 检查内边界与外边界是否全部覆盖。
步骤 3 – 正交表设计
- 识别影响测试结果的因子及其水平数。
- 选择正交表(如 L₉(3⁴)、L₈(2⁷)),要求因子数≥实际因子数、水平数匹配。
- 将因子映射到正交表列,生成最小完备组合。
- 补充经验认为重要的交互组合(如全因子组合中遗漏的),形成最终正交测试用例集。
实践提示:三者通常组合使用——先用等价类划分主场景,再用边界值补充临界点,最后用正交表覆盖多因子交叉场景。执行顺序可先等价类→边界值→正交,也可对齐度优先时先正交再补充孤值。
4.4 输入输出物
| 输入物 | 输出物 |
|---|---|
| 需求规格说明、接口定义、配置参数范围 | 等价类划分表(含有效/无效类) |
| 边界值分析清单(含上下边界、内边界) | 边界值测试用例汇总表 |
| 因子-水平矩阵、正交表选择依据 | 正交表用例集(含补充组合) |
4.5 责任边界
- 测试设计工程师:主导等价类与边界值分析,提交划分结果并评审。
- 测试架构师/DVT Lead:决定是否引入正交表,核准因子选择和水平数。
- 开发工程师:确认输入域和边界值的合理性,提供隐式约束。
- 质量保证(QA):监督用例覆盖率是否符合DVT准入标准(如等价类覆盖率≥95%、边界值全覆盖)。
4.6 记录材料
- 等价类划分记录单(含输入条件、有效类、无效类、对应用例编号)
- 边界值分析检查表(含边界类型、最小值/最大值/略超值、对应用例)
- 正交表设计文档(因子-水平映射表、选用的正交表类型、补充用例说明)
- 评审纪要(记录设计原则争议点、修正版本号)
4.7 异常处理
常见异常与应对
- 无效等价类过多 → 按优先级(严重性/发生频率)筛选,优先覆盖高威胁无效类。
- 边界值不明确(如时间戳范围依赖算法) → 请求开发提供精确计算边界的方法,或通过静态分析推导。
- 正交表因子数>可用列数 → 拆分(先正交覆盖主要因子,剩余因子用单独用例补充);或使用混合正交表。
- 等价类与边界值用例重复 → 去重并保留边界值用例(边界值优先级高于一般等价类)。
4.8 验收标准
- 每个输入条件至少有一个有效等价类和一个无效等价类用例(若存在无效类)。
- 所有已识别的边界点(内边界、外边界、临界值)均生成对应测试用例。
- 正交表用例数不超过“全因子组合数”的30%,且覆盖至少所有两因子交互组合。
- 评审通过:等价类/边界值/正交表设计文档获得测试组长和开发代表的会签。
- 用例与需求的追溯矩阵完整,无遗漏输入域。