您的测试数据应该与实时数据的形式相同吗?

时间:2010-12-13 15:35:32

标签: testing

在测试系统(任何系统,实际上是数据库)时,测试数据与实时数据的格式(格式)是否一致很重要?

您在多大程度上允许两种类型的数据存在差异?

由于

5 个答案:

答案 0 :(得分:4)

这样说:测试数据与实时数据的差异越大,实际测试的价值就越低。所以,是的,您的测试数据应该尽可能接近您的实时数据。

答案 1 :(得分:2)

除非使用虚假数据的具体原因,我认为在测试时尽可能接近实时数据非常重要。否则你肯定会错过问题。

您可能使用虚假数据的具体原因:

  • 实时数据存在隐私或敏感问题;您可能使用伪造的信用卡号码(但格式正确),您可能会混淆名称或电话号码
  • 实时数据量过高,无法进行快速测试;在这种情况下,您应该选择代表性样本
  • 使用实时数据可能会造成外部影响;例如,如果电子邮件可以在测试期间发送给真实用户,您可能不想使用真实的电子邮件地址。但是,通过模拟您的电子邮件系统可以更好地解决最后一个问题。

答案 2 :(得分:1)

我尝试使用两种测试数据来满足我设计的特定情况(通常根据实时数据进行修改);并且只要有可用的大量实时数据,就会遇到大量可能对客户产生影响的场景,并且可能包括我没有想到的场景。

请记住您在任何特定时刻测试的内容。如果你只是测试数据接受服务抓取文件并且它应该抓取任何文件然后在以后拒绝坏格式,那么你不关心文件内部的内容,你至少需要一些其他格式的测试文件。在这种情况下,可能只是更改记事本文件上的扩展就足以进行功能测试,生成一些大文件来测试文件大小等。

如果在开发人员开始处理系统的其他部分时仍然正在制定格式,则使用非准确的测试数据可能特别有用。但是,您需要在系统的每个部分运行实时或类似的实时数据,以便在某些时候进行集成和端到端测试。

答案 3 :(得分:0)

我不同意MusiGenesis,除非您正在测试从数据源读取的能力。

如果您只是测试系统如何使用某些数据执行,那么您可以使用模拟来删除与外部数据源的所有连接。但是,如果您需要测试处理连接失败和断开连接等问题,那么您可能希望尝试连接到相同类型的数据源。

答案 4 :(得分:0)

我认为它比有些人做的更复杂,我通常会有以下测试环境

  • 单元测试 - 生产数据的部分副本
  • 系统测试 - 使用其他系统测试环境中的接口生产数据的陈旧但完整的副本
  • 生产验收 - 与系统测试相同,但从其他PA系统提供,如果您使用海量数据集可能有更多数据
  • 生产维护 - 生产副本经常刷新(例如每周),没有接口,但能够快速实施。这用于解决重大的生产错误。