您当前所在的位置:首页 / 新闻中心 / 常见问题
新闻中心
行业资讯
常见问题
知识百科
产品技术

什么是正交阵列测试(OATS)?

发表于:2019-01-11

OATS测试: 成对测试是一种有效的测试用例生成方法,它基于这样的反映:大多数缺陷是由最多两个因素的相互作用触发的。

正交阵列测试

为什么需要实施成对测试?

在实时应用程序中,即使是简单的应用程序也可能依赖于大量因素,其中每个因素都包含大量有效值。在复杂的应用中,这些因素可能会上升,这使得测试过程变得复杂。为了测试复杂的应用程序,QA测试人员需要为每个因素组合编写测试用例,这将成为一项繁琐而艰巨的任务。

采用依赖于成对生成的测试用例的测试策略包含所有组合,这些组合可以有效地覆盖业务场景,并且在发现错误方面仍然非常有效。测试用例以低效和最佳的方式覆盖给定参数的所有可能组合。

正交数组测试(OATS)和全对算法是实现成对测试的两种方法。

什么是正交阵列测试(OATS)?

OATS测试可以定义为测试成对交互的有条理的统计方法。它为所有变量对提供深度和均匀分布的覆盖。OATS测试使用一组值来表示成对合并的变量因子。通常的测试方法代表了因素和级别的所有安排,这增加了测试用例的数量。

OATS测试技术通常用于复杂的应用程序和Web应用程序。如果AUT涉及大量因素并且每个因素包含更多数量的值,则将使测试过程非常困难。黑盒测试不足以提供足够的测试覆盖率。

示例:有四个参数

A1:五个值

A2:四个值

A3:三个值

A4:两个值

因此,首先找到A1和A2的测试用例,然后它们出现20.然后A1与A3配对。然后A2与A3配对,这样就不会同时重复组合,所有可能的组合都被覆盖。这将继续,直到涵盖所有参数。

为什么要使用OATS测试?

谨慎选择您选择的测试用例可以在以下方面产生重大影响:

- 不仅执行不期望识别缺陷的测试,也不会增加您对应用程序的保证。

- 执行一组简短明确的测试,这些测试可能会发现大多数(并非所有)缺陷,并为用户提供更高的应用程序质量。

OATS测试中使用的术语:

让我们一瞥OATS中使用的术语

  1. 运行:术语运行表示数组中的行数。运行次数等于可以使用OATS技术创建的测试用例数。

  2. 因素:该术语表示数组中的列数,即独立变量

  3. 级别:此术语表示任何单个因子可以采用的最大值。

  4. 强度:在任何子矩阵中没有。所有出现的不同行

OATS的步骤:

  1. 确定需要针对交互进行测试的业务组件的数量。此参数表示数组的因子。它直接从数组中存在的列数转换而来。

  2. 识别具有最少运行次数的适当正交数组。合适的阵列是具有至少与步骤1所需的因子一样多的阵列,并且对于步骤2中确定的每个因子具有至少一个多的水平。

  3. 将因子和值映射到数组上。

  4. 选择任何“遗留”级别的值。

  5. 将运行转录为测试用例,添加任何未生成的特定可疑组合。

参数

  1. 措施:八个价值观

  2. 产品:六个值

  3. 国家:六十个价值观

  4. 月份:十二点

根据传统黑盒测试的测试用例数:8 * 6 * 12 * 60 = 34560

  1. 因素数量 - 4

  2. 级别数 - 60,12,8,6

  3. 运行次数 - 720次

应用具有最大值数的OAT参数后的测试用例数

国家:60

月份:12

OATS测试后的测试用例= 720

首先找出国家和月份的测试用例,然后在国家/月之间为其余因素创建对,以便每个组合保持唯一,并且没有多余的组合。

与OATS测试相关的重要概念:

  1. 双向迭代:当找到2个参数的详尽测试用例时。

  2. 三向迭代:当找到3个参数的详尽测试用例时。

  3. 单模故障 - 单模故障仅由一个参数引起。

  4. 双模式故障 - 由两个相互作用的精度参数值引起。

  5. 多模故障 - 如果有超过2个交互组件产生一致的不准确输出,则称其为多模故障。

可用于OATS测试的工具:

http://hexawise.com是可用于实施OATS的工具。该工具用户友好,使用户能够定义双向迭代和3向迭代。可以使用此工具分析测试覆盖率。

OATS测试的好处:

OATS测试用于以最佳方式识别缺陷。成对技术是可用于此的技术之一。

  1. 这将有助于减少努力,提高生产力和节省成本。

  2. 缩短测试周期时间

  3. 分析更容易

  4. 基于智能风险的测试方法

  5. 使用变量对组合

  6. 平衡的测试用例可确保直接的缺陷隔离和性能评估。与传统方法相比,这可以节省大量成本

  7. 提供均匀分布的覆盖

  8. 有助于软件组件的集成测试