决策表测试(示例)

什么是决策表测试?
决策表测试是一种软件测试技术,用于测试系统在不同输入组合下的行为。它是一种系统化的方法,将不同的输入组合及其对应的系统行为(输出)以表格形式记录下来。因此,它也被称为决策表测试。 因果 表格中记录了原因和结果,以便更好地进行测试覆盖。
A 决策表 是以表格形式呈现输入与规则、案例或测试条件的关系。它对于复杂的测试用例来说都是一种非常有效的工具。 软件测试 以及需求管理。决策表有助于检查所有可能的条件组合,测试人员可以轻松识别缺失的条件。条件用真 (T) 和假 (F) 值表示。
示例 1:登录屏幕的决策表
让我们为登录界面创建一个决策表。
条件很简单:如果用户输入正确的用户名和密码,则会被重定向到首页。如果任何输入错误,则会显示错误信息。
| 医美问题 | 1规则 | 2规则 | 3规则 | 4规则 |
|---|---|---|---|---|
| 用户名(T/F) | F | T | F | T |
| 密码(T/F) | F | F | T | T |
| 输出(E/H) | E | E | E | H |
传说:
- T – 正确的用户名/密码
- F – 用户名/密码错误
- E – 显示错误信息
- H – 显示主屏幕
解读:
- 案例1 用户名和密码均错误。系统会向用户显示错误信息。
- 案例2 用户名正确,密码错误。系统会向用户显示错误信息。
- 案例3 用户名错误,密码正确。系统会向用户显示错误信息。
- 案例4 用户名和密码均正确。用户进入首页。
当将其转换为 测试用例您可以创建两个场景,因为这三个错误案例都测试了相同的规则。
- 输入正确的用户名和密码,然后点击“登录”——用户应该会进入主页。
- 输入错误的用户名和/或错误的密码,然后点击“登录”——用户应该会看到一条错误消息。
示例 2:上传屏幕的决策表
现在考虑这样一个对话框,它要求用户在特定条件下上传照片:
- 只允许使用“.jpg”格式。
- 文件大小必须小于 32 KB。
- 分辨率必须为 137 × 177。
如果任何条件不满足,系统将抛出相应的错误消息;如果所有条件都满足,则照片上传成功。
本案的判决表如下所示。
| 医美问题 | 案例1 | 案例2 | 案例3 | 案例4 | 案例5 | 案例6 | 案例7 | 案例8 |
|---|---|---|---|---|---|---|---|---|
| 格式 | 。JPG | 。JPG | 。JPG | 。JPG | 不是 .jpg | 不是 .jpg | 不是 .jpg | 不是 .jpg |
| 尺寸 | < 32 KB | < 32 KB | ≥ 32 KB | ≥ 32 KB | < 32 KB | < 32 KB | ≥ 32 KB | ≥ 32 KB |
| 分辨率 | 137 × 177 | 不是 137×177 | 137 × 177 | 不是 137×177 | 137 × 177 | 不是 137×177 | 137 × 177 | 不是 137×177 |
| 输出 | 照片已上传 | 分辨率不匹配 | 尺寸不匹配 | 尺寸和分辨率不匹配 | 格式不匹配 | 格式和分辨率不匹配 | 格式和尺寸不匹配 | 格式、尺寸和分辨率不匹配 |
根据这张表格,你可以创建八个测试用例以实现全面覆盖:
- .jpg,< 32 KB,137×177 → 照片上传成功。
- .jpg,小于 32 KB,不是 137×177 → 分辨率不匹配错误。
- .jpg,≥ 32 KB,137×177 → 大小不匹配错误。
- .jpg,≥ 32 KB,不是 137×177 → 大小和分辨率不匹配错误。
- 非 .jpg 格式,小于 32 KB,137×177 → 格式不匹配错误。
- 非 .jpg 格式,小于 32 KB,非 137×177 像素 → 格式和分辨率不匹配错误。
- 非 .jpg 格式,≥ 32 KB,137×177 → 格式和大小不匹配错误。
- 非 .jpg 格式,≥ 32 KB,非 137×177 → 格式、大小和分辨率不匹配错误。
为什么决策表测试很重要
决策表测试之所以重要,是因为它能够测试多种条件组合,并为复杂的业务逻辑提供强大的覆盖率。当系统行为因每组输入而异时,该技术能够以简洁易读的方式提供良好的覆盖率。
In 软件工程边界值分析和等价类划分是类似的技巧,但它们在系统表现出以下特征时最为有效: 同 针对大量输入数据的行为。当行为是 不同 对于每种输入组合,这些技术都不能保证良好的覆盖率——决策表测试成为更好的选择。
此表也可用作需求和功能开发的参考,因为它易于理解且涵盖所有组合。随着输入数量的增加,其重要性也日益凸显:可能的组合数量为 2^n,其中 n 为输入数量。对于常见的 Web 表单中的 n = 10,则有 1,024 种组合。您无法测试所有组合,但可以使用基于决策的测试方法选择一个包含所有组合的子集。
决策表测试的优点
- 当系统行为因输入而异,而等价类划分和边界值分析不足以解决问题时,该方法有效。
- 这种表示方法很简单,因此易于理解,对开发团队和业务团队都很有用。
- 有助于构建有效的组合,并确保更好的测试覆盖率。
- 任何复杂的业务状况都可以转化为决策表。
- 当输入组合数量较少时,可确保 100% 的覆盖率。
决策表测试的缺点
主要缺点是,随着输入数量的增加,表格会变得更加复杂,更难管理。


