正交表测试(OATS)工具、技术和示例

正交表试验

正交表测试(OAT)是一种使用正交表创建测试用例的软件测试技术。正交数组测试通过将输入配对和组合,并使用相对较少的测试用例来测试系统以节省时间,从而帮助最大限度地提高测试覆盖率。

例如,当必须验证火车票时,必须测试乘客数量、车票号码、座位数量和车次等因素。在这种情况下,我们可以使用正交表测试法。

这种将输入和测试系统配对或组合以节省时间的类型称为成对测试。

在本教程中,将了解

  • 什么是OAT(正交表测试)?
  • 为什么选择OAT(正交表测试)?
  • 正交的表述方式
  • 如何进行正交表测试
  • 正交表的优势
  • 正交表的缺点
  • 执行OAT时出现错误或错误

为什么选择OAT(正交表测试)?

在目前的场景中,由于代码的复杂性,向客户交付高质量的软件产品变得具有挑战性。

在传统方法中,测试套件包括从输入值和前提条件的所有组合导出的测试用例。因此,必须覆盖n个测试用例。

但在实际场景中,测试人员没有空闲时间执行所有测试用例来发现缺陷,因为在测试阶段还需要考虑其他流程,如文档、建议和来自客户的反馈。

因此,测试经理希望优化测试用例的数量和质量,以确保以最小的努力实现最大的测试覆盖率。这项工作称为测试用例优化。

  1. 成对交互作用检验的系统统计方法
  2. 交互和集成点是缺陷的主要来源。
  3. 执行定义良好、简明扼要的测试用例,这些用例可能会发现大多数(不是所有)错误。
  4. 正交方法保证了所有变量的两两覆盖。

正交表片的表述方式

正交表的计算公式

Orthogonal Array Testing (OAT)formula to calculate
Orthogonal Array Testing (OAT)formula to calculate
  • Runs(N)-数组中的行数,转换为将生成的测试用例数量。
  • Factor(K)-数组中的列数,转换为可以处理的最大变量数。
  • Level(V)-可对任何单个因素取值的最大数量。

单个因素有2到3个要测试的输入。投入的最大数量决定了Level。

如何进行正交表测试:示例

  1. 确定场景的自变量。
  2. 查找具有运行次数的最小数组。
  3. 将因子映射到阵列。
  4. 选择任何“剩余”级别的值。
  5. 将运行转录成测试用例,添加未生成的任何特别可疑的组合。

示例1

网页有三个截然不同的部分(顶部、中间、底部),可以单独对用户显示或隐藏

  • 系数数=3(顶部、中间、底部)
  • Level数(可见性)=2(隐藏或显示)
  • Array Type = L4(23)

(4是创建OAT数组后到达的运行次数)

如果我们采用传统的测试技术,需要像2X3=6这样的测试用例

测试用例 场景 要测试的值
测试1 隐藏 顶部
测试2 如图所示 顶部
测试3 隐藏 底部
测试4 如图所示 底部
测试5 隐藏 中间
测试6 如图所示 中间

如果我们进行OAT测试,我们需要4个测试用例,如下所示:

测试用例 顶部 中间 底部
测试1 隐藏 隐藏 隐藏
测试2 隐藏 可见 可见
测试3 可见 隐藏 可见
测试4 可见 可见 隐藏

示例2:

微处理器的功能必须经过测试:

  1. 温度:100摄氏度、150摄氏度和200摄氏度。
  2. 压力:2磅/平方英寸、5磅/平方英寸和8磅/平方英寸
  3. 掺杂量:4%、6%、8%
  4. 沉积速率:0.1 mg/s、0.2 mg/s、0.3 mg/s

通过使用传统方法,需要=81个测试用例来覆盖所有输入。让我们使用正交表方法:

因子=4(温度、压力、掺杂量和沉积速率)

级别=每个因素3个级别(温度有3个级别-100摄氏度、150摄氏度和200摄氏度,同样其他因素也有级别)

创建一个阵列,如下所示:

1. 具有编号的列因素的组合

测试用例编号 温度 压力 掺杂量 沉积率

2. 输入行数等于每个因子的级别。因此,为每个温度级别插入3行,

测试用例编号 温度 压力 掺杂量 沉积率
1 100C
2 100C
3 100C
4 150C
5 150C
6 150C
7 200C
8 200C
9 200C

3. 现在将柱子中的压力、掺杂量和沉积率分开。

例如:在100C、150C和200C温度下输入2磅/平方英寸,同样在100C、150C和200C等温度下输入4%的掺杂量,依此类推。

测试用例编号 温度 压力 掺杂量 沉积率
1 100C 2磅/平方英寸 4% 0.1 毫克/秒
2 100C 5磅/平方英寸 6% 0.2 毫克/秒
3 100C 8磅/平方英寸 8% 0.3 毫克/秒
4 150C 2磅/平方英寸 4% 0.1 毫克/秒
5 150C 5磅/平方英寸 6% 0.2 毫克/秒
6 150C 8磅/平方英寸 8% 0.3 毫克/秒
7 200C 2磅/平方英寸 4% 0.1 毫克/秒
8 200C 5磅/平方英寸 6% 0.2 毫克/秒
9 200C 8磅/平方英寸 8% 0.3 毫克/秒

因此,在OAS中,我们需要涵盖9个测试用例。

正交表的优势

  • 保证测试所有选定变量的成对组合。
  • 减少测试用例的数量
  • 创建更少的测试用例,覆盖所有变量的所有组合的测试。
  • 可以进行变量的复杂组合。
  • 与手动创建的测试集相比,生成起来更简单,也更不容易出错。
  • 对集成测试很有用。
  • 由于减少了测试周期和测试时间,因此提高了工作效率。

正交表的缺点

  • 随着数据输入的增加,测试用例的复杂性也随之增加。因此,测试人员必须进行自动化测试。
  • 对于软件组件的集成测试非常有用。

执行OAT时出现错误

  1. 测试工作不应该集中在应用程序的错误区域。
  2. 避免选择错误的参数进行合并
  3. 避免将正交数组测试用于最小的测试工作量。
  4. 手动应用正交表测试
  5. 正交表测试在高风险应用中的应用

结论:

在这里,我们已经看到了如何使用OAT(正交数组测试)来减少测试工作量,以及如何实现测试用例优化。

IT赶路人

专注IT知识分享