📜  软件测试中测试数据生成的方法

📅  最后修改于: 2021-08-27 04:47:24             🧑  作者: Mango

先决条件:软件测试|基本

作为测试人员,您不仅需要测试软件产品,还必须管理,收集和维护大量数据集,以便有效地测试所有主要测试用例,以确保满足所有要求。无论是功能测试还是非功能测试,都应尽可能地最大化。这些测试数据集用作测试用例的输入,随后基于这些数据集生成输出,并分析系统的行为(无论是否预期)。

测试数据生成
测试数据生成是从各种资源收集和管理大量数据的过程,仅用于实施测试用例,以确保被测系统的功能健全。这些生成的数据集充当测试用例的输入,以便可以检查系统的行为。设计或选择测试数据集以进行正向测试或负向测试。生成合理且相关的数据集是一项非常复杂的任务,因为覆盖不良框架的数据集可能会使主要的测试用例需要检查。

因此,有一些常用的技术通常用于生成数据集:

1)手动测试数据生成:
在这种技术中,所有数据集都是由测试人员通过经验和预期相对于所有所需测试用例手动生成的。

优点

  1. 易于实施,无需部署其他工具。
  2. 增加测试人员的信心。

缺点

  1. 由该方案产生的数据集的准确性令人怀疑。
  2. 耗时的过程。

2)自动生成测试数据:
该测试的主要特征是它比上述技术更有效,它的速度是自动数据生成技术,它通过在短时间间隔内分析大量数据来快速生成数据。在这种方案中,我们使用自动化工具,市场上有很多可用的工具。

优点

  1. 通过此方案生成的数据集非常准确。
  2. 数据生成速度非常快。

缺点:

  1. 这种方法的一个缺点是它是一种实施成本较高的方法。
  2. 第二个问题是这些工具需要花费一些时间来理解系统。

3)后端数据注入方式:
此方法是在使用SQL查询的帮助下完成的。测试人员在此处编写相关查询,并将其注入数据库中,以便针对测试案例填充所需的数据集。这也是一种更简便的方法,仅需几分钟即可生成大量数据。如果通过其他资源(例如样本XML文档等)找到了一些新的数据集,则可以在此方案中更新数据库,如果需要的话可以进行更新以供将来使用。

优点:

  1. 这是耗时较少的技术。
  2. 与上述技术相比,所需的专业知识更少,因为您只需编写正确的查询即可填充所需的数据。

缺点:

  1. 如果您编写任何无效的查询或不正确的查询,则可能会填充不合逻辑的数据集或可能导致数据库系统故障,因此在将任何查询注入数据库时请注意。

4)第三方工具:
市场上有许多由外部工具处理或提供的工具。这些工具首先了解您正在测试的系统的场景,然后根据需求生成数据集。这些工具可以根据您的业务需求进行定制。这些工具在生成数据集方面具有广泛的覆盖范围和准确性。

优点:

  1. 这些工具之所以准确是因为它们首先了解整个系统,然后相应地生成了数据集。

缺点:

  1. 由于这种工具的价格比其他技术高,因此实施起来比较昂贵。
  2. 在异构测试环境中,覆盖范围较小,因为这些工具本质上不是通用的。