边界值分析与等价划分

由于时间和组合的限制,穷举测试很少可行。等价类划分和边界值分析通过分组来解决这个问题。ping 输入相似的数据,并针对其边缘进行优化,以更少的病例实现更强的覆盖。
什么是等价类划分?
等价划分 (也称为等价类划分或 ECP)是一种黑盒测试技术,它将输入数据划分为若干等价值组。测试人员为每个类选择一个代表,并假设软件对每个成员的行为都相同。
- 将输入域拆分为有效等价类和无效等价类。
- 适用于所有情况 测试级别—单元、集成、系统和验收。
什么是边界值分析?
边界值分析(BVA)也称为范围检查,BVA 验证每个等价类的极端值。由于缺陷往往集中在范围边缘,BVA 着重关注以下五个关键点:
- 最低限度
- 略高于最低限度
- 名义价值
- 略低于最高限额
- 最大
BVA 可以补充等价类划分:一旦定义了类,它们的边界值就会暴露出差一错误和边缘错误。
为什么要使用等价类划分和边界值分析?
当组合数量过多而无法进行穷举测试时,智能选择测试方法至关重要。这些方法具有以下三个优点:
- 将大量的测试用例压缩成易于管理的小块。
- 提供明确的规则来选择测试数据,同时又不牺牲有效性。
- 适用于计算密集型应用,以及大量的数值变量。
如何进行等价类划分(示例)
- 请参考下面的“订购披萨”文本框。
- 数量 1~10 均有效;将显示成功消息。
- 数量 11–99 无效,触发 “只能订10个披萨”.
订购披萨:
测试条件:
- 任何大于10的数字都是无效的。
- 小于 1 的任何数字均无效。
- Numbers 1-10 均有效。
- 任何像-100这样的三位数都是无效的。
测试每个值会产生 100 多个用例。等价类划分将领域划分为具有相同行为的类。
这些群体被称为 等价类为每个班级选择一个值——如果该值通过,则所有其他值都通过;如果该值未通过,则整个班级未通过。
如何进行边界值分析(示例)
使用相同的披萨字段,BVA 检查的是分区边界而非标称值。测试人员评估 0、1、10 和 11——涵盖有效和无效边界。
对于接受 1 到 10 之间值的输入,边界测试用例如下:
| 测试场景 Description | 预期成果 |
|---|---|
| 边界值 = 0 | 系统不应该接受 |
| 边界值 = 1 | 系统应该接受 |
| 边界值 = 2 | 系统应该接受 |
| 边界值 = 9 | 系统应该接受 |
| 边界值 = 10 | 系统应该接受 |
| 边界值 = 11 | 系统不应该接受 |
等价类划分与边界值分析
两者都能减少测试量,但在重点和时间安排上有所不同。
| 方面 | 等价划分 | 边值分析 |
|---|---|---|
| 专注 | 等量投入物组 | 各组的边缘 |
| 数据选择 | 每个类别一个值 | 最小值、接近最小值、标称值、接近最大值、最大值 |
| 最适合 | 减少冗余案例 | 捕获差一缺陷 |
| 下单 | 首先申请 | 接下来应用 |
示例:密码字段验证
密码字段接受 6 到 10 个字符,形成三个分区——0-5、6-10 和 11-14——每个分区内的结果都相同。
输入密码:
| # | 测试场景 | 预期成果 |
|---|---|---|
| 1 | 请输入 0 到 5 个字符 | 系统不应该接受 |
| 2 | 请输入 6 到 10 个字符 | 系统应该接受 |
| 3 | 请输入 11 到 14 个字符 | 系统不应该接受 |
等价类划分和BVA的最佳实践
遵循以下做法,在控制测试数量的同时,保持较高的测试覆盖率:
- 绘制每个域的地图: 首先列出有效分区、无效分区和特殊分区。
- 分别检验每个极限的两侧: 包含内外两侧的值,以捕获差一错误。
- 结合多种技术: 可与决策表或状态转换测试结合使用,以实现复杂的逻辑。
- 自动处理极端情况: 对边界值进行参数化,以便回归测试套件能够一致地运行。
关键精华
- 等价类划分将相似的输入分组;每个类别只需一个值即可。
- 边界值分析验证分区界限和有效/无效边。
- 两者都是针对数值或范围字段的黑盒技术。
- 将它们结合起来,既能减少测试量,又不会降低缺陷检测质量。
边界值分析与等价分割测试视频
点击 开始 如果视频无法访问




