业精于勤,荒于嬉,行成于思,毁于随。

关于测试数据的准备

上一篇 / 下一篇  2009-10-16 17:17:24 / 个人分类:技能技巧

对于一些业务比较复杂的中型以上项目来说,准备正确、真实的测试数据对于成功的测试项目是至关重要的。很庆幸在网站上看到了一些关于这方面的帖子总结的都非常好。这里综合了一下,以备日后的参考!

不管是自动测试还是手动测试,都会涉及到基础数据的准备问题。通常情况下,可以根据系统实际情况,按照如下顺序来准备数据:

  1. Production Data 生产数据

  如果系统前一版本已经发布,我们能够拿到这些生产数据来测试,那是最为理想的,最能反映最终用户环境,是需要优先考虑的。

  2. Legacy System Data 遗留系统数据

  虽然当前系统还没有发布任何版本,但是有一个遗留系统,那就应该利用数据迁移,尽量拿到遗留系统相对比较真实的数据,这样的数据跟最终用户环境也比较接近,也是比较理想的。

  3. UI Input UI输入创建数据

  如果既没有发布任何版本,也没有遗留系统,那么就要考虑从UI上输入相关数据,这种数据跟真实数据比较接近,较为可信赖。

  4. Script. create 用脚本创建数据

  最后,对于不符合一二两种情况,而且没有UI,或者需要的数据量太大,没法一条一条的通过UI输入创建。这时候,就要考虑用脚本来产生,尽量模拟用户的真实数据。

  总之,测试过程中数据的真实性很重要,有些缺陷并不是程序本身的问题,而是一些脏数据引起的,因此我们在进行测试数据准备的时候,要按照上述优先顺序来准备数据。

软件测试过程中,测试数据的准备是一个工作量很大而且也是一个技术活。因此如何准备大量的测试数据,而且如何准备高质量的测试数据,满足测试的需求,就是一个重要的话题。
        首先看数据的来源,数据的来源一般来讲有三个个,一个是根据被测系统需求的分析,针对正常业务,异常情况,边界情况等来构建完整的数据,又称为“造”数据。这不仅仅包括最基本的基础数据,比如:用户、权限、配置、基础编码、原数据等,还包括上面提到的业务数据。这对于比较小型的系统来说还是可行的,对于大型的系统来说可能就是一个巨大的工程了。
        第二种方式就是利用现有系统,这适合已有类似系统,测试是针对升级或者增加功能的产品化的系统。这种情况把已经在生产环境中运行的数据导出。在此基础上再进行数据的整理、加工为测试数据。
        还有一种方式就是将现有非电子化的业务数据录入到系统中,在验证业务的同时也完成了测试数据的积累。即边测试边积累数据。但是这种情况积累的数据往往有一定局限性,因为已经发生的业务数据基本是正确的、一致的,而且可能缺少某些特定业务的数据(不常发生的业务)。这样就需要根据对测试需求的分析,追加新的测试数据,以便能完整覆盖业务类型。
        确定好数据来源后,还需要对已有数据进行分析、验证、检查,保证数据的质量,数据的质量一般要满足测试需求、覆盖被测业务、覆盖测试边界,以及要满足完整性、一致性等要求。检查完后要整理和完善数据,清除无用和冗余的数据、补录不完整的数据,修改一些错误的数据。
        经过整理好的数据要纳入配置管理,以后根据需求和变更要进行数据的维护和更新,以保证满足系统测试的要求。

                   


TAG:

 

评分:0

我来说两句

Open Toolbar