全对测试(即成对测试)
什么是全对测试?
全对测试也称为成对测试,是一种使用组合方法测试软件的测试方法。这是一种测试所有可能的离散参数组合的方法。
假设我们有一个要测试的软件,它有 10 个输入字段,每个输入字段有 10 个可能的设置。那么,就有 10^10 个可能的输入需要测试。在这种情况下,即使我们希望测试所有组合,也不可能进行详尽的测试。
让我们通过一个例子来了解全对测试的概念。
示例
一个应用程序,其中包含 10 个元素(假设为 0、1、2、3、4、5、6、7、8、9)的简单列表框以及复选框、单选按钮、文本框和确定按钮。文本框的约束是它只能接受 1 到 100 之间的值。以下是每个 GUI 对象可以采用的值:
列表框 - 0、1、2、3、4、5、6、7、8、9
复选框 - 选中或未选中
单选按钮 - 开或关
文本框 - 1 到 100 之间的任何值
计算应用程序的详尽组合。
列表框 = 10 复选框 = 2 单选按钮 = 2 文本框 = 100 使用笛卡尔方法的测试用例总数:10*2*2*100 = 4000 包括负面案例在内的测试用例总数将 > 4000
现在,这个想法是减少测试用例的数量。我们将首先尝试使用传统的软件测试技术找出用例的数量。我们可以将列表框的值视为 0,其他值为 0,既不是正数也不是负数。单选按钮和复选框的值不能减少。因此,它们每个都有 2 个组合(ON 或 OFF)。文本框值可以减少为三个输入(有效整数、无效整数、字母特殊字符)。
现在,我们将使用软件测试技术计算用例的数量为 2*2*2*3 = 24(包括负数用例)。
现在,我们仍然可以将组合进一步减少为全对技术。
步骤 1:对值进行排序,使值最多的值放在第一个,值最少的值放在最后一个变量。
步骤 2:现在,开始逐列填充表格。列表框可以采用 2 个值。
步骤 3:接下来要讨论的列是复选框。同样,复选框可以采用 2 个值。
步骤 4:现在,我们需要确保涵盖列表框和复选框之间的所有组合。
步骤 5:现在,我们将使用相同的策略来检查单选按钮。它可以采用 2 个值。
步骤 6:验证是否涵盖了所有配对值,如下表所示。
文本框 | 列表框 | 复选框 | 单选按钮 |
---|---|---|---|
Valid Int | 0 | check | ON |
Valid Int | others | uncheck | OFF |
Invalid Int | 0 | check | ON |
Invalid Int | others | uncheck | OFF |
AlphaSpecialCharacter | 0 | check | ON |
AlphaSpecialCharacter | others | uncheck | OFF |
成对测试的结果
详尽组合产生 > 4000 个测试用例。 传统软件测试技术产生 24 个测试用例。 成对软件测试技术仅产生 6 个测试用例。