软件测试 - 等价分区测试
开发的软件要经过多个测试阶段,以验证其是否按照规范运行。在黑盒测试中,将验证软件生成的输出与输入之间的关系。等价分区是黑盒测试下的概念之一。它是一种将输入数据范围划分为多个类,然后将其转换为测试类的技术。
什么是等价分区?
等价分区是一种在软件测试中非常流行的测试设计技术。它使测试人员能够将输入数据分成几组。它有助于在不影响实现良好测试覆盖率的情况下最大限度地减少测试总数。它有助于在测试软件时处理大量测试数据。
如何设置等价分区?
如果提供了一系列条件作为输入,则应该有一个有效等价类和两个无效等价类。如果将特定数据视为输入,则应该有一个有效等价类和两个无效等价类。如果从数据范围中选择了特定输入,则应该有一个有效等价类和两个无效等价类。最后,如果选择布尔值作为输入条件,则应该有一个有效等价类和一个无效等价类。
示例
让我们以一个电子商务应用程序为例,该应用程序提供以下所述范围内的折扣 −
应用程序中不允许少于 1 美元的交易。 对于 1 美元到 150 美元的交易,将给予 5% 的折扣。 对于 151 美元到 250 美元的交易,将给予 10% 的折扣。 对于 251 美元到 3500 美元的交易,将给予 25% 的折扣。 应用程序中不允许超过 3500 美元的交易。
等价分区 | ||||
---|---|---|---|---|
Invalid | Valid 5 % | Valid 10 % | Valid 25 % | Invalid |
>$1 | $1 to $150 | $151 to $250 | $251 to $3500 | < $3500 |
从上面的等价分区表中,我们将输入数据划分为逻辑有效和无效分区。此外,我们清楚地了解需要测试哪些值才能获得不同的折扣值。它还指导开发最佳数量的测试用例,以实现最佳测试覆盖率。
等价分区减少了测试随机值的机会。我们需要在高端和低端测试无效分区中的某些值,然后集中精力测试各个有效分区中的某些值。在我们的例子中,对于下部无效分区,我们可以选择值$0.99和$0进行测试,对于上部无效分区,我们可以选择值$3506和$4000进行测试,对于第一个有效分区,我们可以选择值$1和$140进行测试,对于第二个有效分区,我们可以选择值$152和$250进行测试,对于第三个有效分区,我们可以选择值$251和$4000进行测试。
通过应用等价类分区,我们可以实现非常好的测试覆盖率,并且可以验证电子商务应用程序的折扣功能的每个分区。因此,我们将在特定场景中表现相似或逻辑上相等的不同模块划分为有效和无效分区。然后在这些分区内,无论在该范围内选择哪些值都无关紧要,输出都将相同。例如,对于价值在 1 美元到 150 美元范围内的所有交易,我们应该给予相同的 5% 折扣。如果将等价类划分与边界值分析结合使用,则可以提供最佳的测试覆盖率。
为什么我们使用等价划分?
使用等价划分的原因如下 −
- 它有助于通过设计最佳数量的测试用例实现最佳测试覆盖率。
- 由于我们只需要创建最佳数量的测试用例,因此可以节省大量时间和精力。
- 它有助于检测每个等价划分的边界值处的错误。
- 它提供了重用测试用例的选项。
- 基于等价划分构建的测试用例更易于维护。
等价划分的优点等价划分
等价划分的优点如下 −
- 它提高了测试用例的质量和有效性。
- 它有助于提高测试覆盖率。
- 它节省了大量的测试时间和精力。
- 它检测到了软件中的大量错误。
- 它提高了软件的整体质量。
等价划分的缺点
等价划分的缺点如下 −
- 它仅限于输入数据集及其生成的输出,并且没有对软件的不同组件如何相互作用进行任何验证。
- 对于复杂且集成的软件,很难提出等价划分场景。
- 它需要测试人员对软件的了解才能得出所有等效分区。
- 虽然等效分区提供了良好的覆盖范围,但它不能保证识别软件中的所有缺陷。
结论
这就是我们对软件等效分区测试教程的全面介绍。我们首先描述了什么是等效分区,如何设置等效分区,等效分区的示例,为什么我们使用等效分区,等效分区的优点是什么,以及等效分区的缺点是什么。这使您具备了软件等效分区测试的深入知识。明智的做法是继续实践您学到的知识并探索与软件测试相关的其他知识,以加深您的理解并拓展您的视野。