决策表测试(示例)

什么是决策表测试?

决策表测试是一种软件测试技术,用于测试不同输入组合的系统行为。这是一种系统方法,其中不同的输入组合及其相应的系统行为(输出)以表格形式捕获。这就是为什么它也被称为 因果 表中捕获了因果关系,以提高测试覆盖率。

A 决策表 是输入与规则/案例/测试条件的表格表示。它是一种非常有效的工具,可用于复杂的 软件测试 和需求管理。决策表有助于检查测试条件的所有可能组合,测试人员也可以轻松识别遗漏的条件。条件以 True(T) 和 False(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:如何制作上传屏幕的决策表

现在考虑一个对话框,要求用户上传具有某些条件的照片,例如 -

  1. 您只能上传‘.jpg’格式的图片
  2. 文件大小小于32kb
  3. 分辨率137*177。

如果任何条件不满足,系统将抛出相应的错误消息,说明问题,如果所有条件都满足,照片将成功更新

制定上传屏幕的决策表

让我们为此案例创建决策表。

医美问题 案例1 案例2 案例3 案例4 案例5 案例6 案例7 案例8
格式 。JPG 。JPG 。JPG 。JPG 不是 .jpg 不是 .jpg 不是 .jpg 不是 .jpg
尺码 Less 大于 32kb Less 大于 32kb >= 32kb >= 32kb Less 大于 32kb Less 大于 32kb >= 32kb >= 32kb
分辨率 137*177 不是137*177 137*177 不是137*177 137*177 不是137*177 137*177 不是137*177
输出 照片已上传 错误消息解析不匹配 错误消息大小不匹配 错误消息大小和分辨率不匹配 格式不匹配的错误消息 错误消息格式和分辨率不匹配 格式和大小不匹配的错误消息 格式、大小和分辨率不匹配的错误消息

对于这种情况,我们可以根据上表创建8个不同的测试用例并确保完全覆盖。

  1. 上传一张格式为“.jpg”、大小小于32kb、分辨率137*177的照片,然后点击上传。预期结果是照片应该上传成功
  2. 上传一张格式为“.jpg”、大小小于32kb、分辨率不为137*177的照片,然后点击上传。预期结果是应显示错误消息解析不匹配
  3. 上传一张格式为“.jpg”、大小大于32kb、分辨率137*177的照片,然后点击上传。预期结果是应显示错误消息大小不匹配
  4. 上传一张格式为“.jpg”、大小大于等于32kb且分辨率不为137*177的照片,然后点击上传。预期结果是应显示错误消息大小和分辨率不匹配
  5. 上传非“.jpg”格式、大小小于32kb、分辨率137*177的照片,然后点击上传。预期结果是应显示格式不匹配的错误消息
  6. 上传非“.jpg”格式、大小小于32kb、分辨率不为137*177的照片,然后点击上传。预期结果是应显示错误消息格式和分辨率不匹配
  7. 上传非“.jpg”格式、大小大于32kb、分辨率137*177的照片,然后点击上传。预期结果是应显示格式和大小不匹配的错误消息
  8. 上传非“.jpg”格式、大小超过32kb且分辨率不为137*177的照片,然后点击上传。预期结果是应显示格式、大小和分辨率不匹配的错误消息

为什么决策表测试很重要?

决策表测试很重要 因为它有助于测试不同的条件组合,并为复杂的业务逻辑提供更好的测试覆盖率。当测试大量输入的行为时,系统行为因每组输入而异,决策表测试提供了良好的覆盖率,并且表示简单,因此易于解释和使用。

In 软件工程、边界值和等效分区是用于确保更好覆盖的其他类似技术。如果系统显示 大量输入的行为。然而,在一个系统中,对于每组输入值,系统行为是 不同、边界值和等效划分技术不能有效确保良好的测试覆盖率。

在这种情况下,决策表测试是一个不错的选择。该技术可以保证良好的覆盖率,并且表示简单,易于解释和使用。

该表易于理解且涵盖所有组合,可作为需求和功能开发的参考。

随着输入数量的增加,这种技术的重要性立即显现出来。可能的组合数为 2 ^ n ,其中 n 是输入的数量。对于 n = 10(这在基于 Web 的测试中非常常见),具有较大的输入表单,组合数将为 1024。显然,您无法测试所有组合,但可以使用基于决策的测试技术选择可能组合的丰富子集。

决策表测试的优点

  • 当系统行为对于不同的输入不同且对于一系列输入不一样时,等效分割和边界值分析都无济于事,但可以使用决策表。
  • 该表示很简单,因此可以轻松解释,也可用于开发和业务。
  • 该表将有助于进行有效的组合,并确保更好的测试覆盖范围
  • 任何复杂的业务条件都可以轻松转化为决策表
  • 在我们通常要实现 100% 覆盖率的情况下,当输入组合较低时,此技术可以确保覆盖率。

决策表测试的缺点

主要缺点是当输入数量增加时,表格将变得更加复杂

决策表测试视频

点击 点击这里 如果视频无法访问

了解更多 readmore