等价分区技术


等价分区技术

等价分区是一种软件测试技术,其中输入数据被分为有效值和无效值的分区,并且所有分区必须表现出相同的行为。如果一个分区的条件为真,那么另一个等分的条件也必定为真,如果一个分区的条件为假,那么另一个等分的条件也必定为假。等价分区的原则是,测试用例应该设计为至少覆盖每个分区一次。每个相等分区的每个值都必须表现出与其他分区相同的行为。

等效分区源自软件的需求和规范。这种方法的优点是,由于测试用例数量从无限减少到有限,因此有助于减少测试时间。它适用于测试过程的所有级别。

等价划分技术的例子

假设有一个软件应用程序的功能,它接受特定数量的数字,而不是大于和小于该特定数字。例如,仅包含六位、少于或多于六位的 OTP 号码将不被接受,应用程序会将用户重定向到错误页面。

  1. \1. OTP 号码 = 6 位

等价分区技术 等价分区技术

让我们再看一个例子。

该软件应用程序的一项功能接受一个 10 位数的手机号码。

  1. \2. 手机 号码 = 10 位

等价分区技术 等价分区技术

在这两个例子中,我们可以看到有两个同等有效和无效分区的分区,在应用有效值(例如第一个示例中的 6 位 OTP 和第二个示例中的 10 位手机号码)时,两个有效分区的行为相同,即重定向到下一页。

另外两个分区包含无效值,例如第一个示例中的 5 或小于 5 和 7 或大于 7 位,以及第二个示例中的 9 或小于 9 和 11 或大于 11 位,并且在应用这些无效值时,无效分区的行为相同,即重定向到错误页面。

我们可以在示例中看到,每个示例只有三个测试用例,这也是等价划分的原则,它表明该方法旨在减少测试用例的数量。

我们如何执行等价划分

我们可以通过以下两种方式进行等价划分:

等价分区技术

让我们看看pressman和一般实践方法将如何在不同条件下使用:

条件 1

如果要求是一系列值,则为一个有效输入和两个无效输入导出测试用例。

在这里,值范围意味着每当我们想要识别范围值时,我们都会进行等价分区以实现最小测试覆盖率。之后,我们进行错误猜测以实现最大的测试覆盖率。

据新闻记者说:

例如,测试字段的数量接受范围 (100-400) 的值:

等价分区技术

根据一般实践方法:

每当要求是范围 + 标准时,将范围划分为内部结构并检查所有这些值。

例如:

在下图中,pressman 技术足以测试一个有效和两个无效的年龄文本字段。但是,如果我们需要十年及以上的保险条件,并且年龄文本字段中有多个不同年龄段的保单,那么我们需要使用实践方法。

等价分区技术

条件2

如果需求是一组值,则为一个有效输入和两个无效输入导出测试用例。

在这里,值集意味着每当我们必须测试一组值时,我们会选择一个正输入和两个负输入,然后我们进行错误猜测,我们还需要验证所有值集是否符合要求。

示例 1

基于 Pressman 方法

如果转账金额是(100000-700000)

然后为,10万→接受

并根据一般实践方法

给予 10 万至 70 万的范围 + 百分比

喜欢: 1lak - 3lak →5.60%

3lak - 6lak →3.66%

6lak - 7lak →免费

等价分区技术

如果我们有贷款之类的东西,我们应该采用通用方法,将这些东西分成不同的时间间隔,以实现最小的测试覆盖率。

示例 2

如果我们在做网购,手机产品,不同的产品ID - 1,4,7,9

等价分区技术

在这里,1 → 手机壳 4 → 耳机 7 → 充电器 9 → 屏幕保护膜

如果我们提供产品id为4,它会被接受,并且它是一个有效值,如果我们提供产品id为5和手机壳,它不会被接受,这是两个无效值。

等价分区技术

条件 3

如果需求 id Boolean (true/false),则为 true/false 值派生测试用例。

单选按钮、复选框的布尔值可以是 true 和 false。

例如

等价分区技术

序列号 描述 输入 预期的 笔记
1 选择有效 不适用 真的 ---
2 选择无效 不适用 错误的 值可以根据需要更改。
3 不选择 不适用 不要选择任何东西,应该显示错误消息 我们不能去问下一个问题
4 选择两者 不适用 我们可以选择任何单选按钮 一次只能选择一个单选按钮。

笔记:

实践方法中,我们将遵循以下过程:

在这里,我们通过导出以下输入值来测试应用程序:

等价分区技术

让我们看一个程序以便更好地理解。

If( amount < 500 or > 7000)  
{  
Error Message  
}  
if( amount is between 500 & 3000)  
{  
deduct 2%  
}  
if (amount > 3000)  
{   
deduct 3%  
}

使用pressman 技术时,测试前两个条件,但如果我们使用练习方法,则涵盖所有三个条件。

我们不需要对所有应用程序都使用实践方法。有时我们也会使用pressman 方法。

但是,如果应用程序具有很高的精度,那么我们就采用练习方法。

如果我们要使用练习方法,应该遵循以下几个方面:

  • 它应该是特定于产品的
  • 应该是具体情况
  • 划分的数量取决于精度(扣除 2% 和 3%)

等价分区技术的优缺点

以下是等价划分技术的优缺点:

好处 缺点
它是面向过程的 可能无法涵盖所有必要的输入。
我们可以达到最小的测试覆盖率 该技术不会考虑边界值分析的条件。
它有助于减少一般测试执行时间并减少测试数据集。 测试工程师可能会假设所有数据集的输出都是正确的,这会导致测试过程中出现问题。