测试数据准备篇

如何准备测试数据?

测试数据准备方法主要可以分为四类:
基于 GUI 操作生成测试数据;–少用,一般只用于手工测试
通过 API 调用生成测试数据;–目前主流的测试数据生成方法 在实际工程实践中,我们往往会把调用 API 生成测试数据的过程封装成测试数据准备函数。(这个方法可以啊)
通过数据库操作生成测试数据;–创建数据需要用到的 SQL 语句封装成一个个的测试数据准备函数,当我们需要创建数据时,直接调用这些封装好的函数即可
综合运用 API 和数据库的方式生成测试数据。
API+数据库:最典型的应用场景是,先通过 API 调用生成基础的测试数据,然后使用数据库的 CRUD 操作生成符合特殊测试需求的数据

(目前公司做测试,测试数据采用两种方法
1.GUI操作生成 效率低,浪费时间,数据浪费后仍需要从头到尾操作一遍。
2.IT从生产系统down数据到测试环境
其他方式也没有采取过,看来以后要考虑实践下其他方式,也是解放自己的生产力。)

浅谈测试数据的痛点

从测试数据创建的时机来看,主要分为 On-the-fly(实时创建)和 Out-of-box(事先创建测试数据)两类方法。
采用 On-the-fly 方式创建的数据,都是由测试用例自己维护的,不会依赖于测试用例外的任何数据,从而保证了数据的准确性和可控性,
最大程度地避免了出现“脏”数据的可能。

Out-of-box 方法,又称开箱即用方法,指的是在准备测试环境时就预先将测试需要用到的数据全部准备好,而不是在测试用例中实时创建。
Out-of-box 最致命的问题是“脏”数据。
综合运用 On-the-fly 和 Out-of-box 在实际的测试项目中,我们可以根据测试数据的特性,把它们分为两大类,用业内的行话来讲就是“死水数据”和“活水数据”。
“死水数据”是指那些相对稳定,不会在使用过程中改变状态,并且可以被多次使用的数据。
“活水数据”是指那些只能被一次性使用,或者经常会被修改的测试数据

测试数据准备

测试数据准备的 1.0 时代 这个阶段最典型的方法就是,将测试数据准备的相关操作封装成数据准备函数。
在测试数据准备的 2.0 时代,数据准备函数不再以暴露参数的方式进行封装了,而是引入了一种叫作 Builder Pattern(生成器模式)的封装方式。Build Strategy 指的是数据构建的策略。引入了 Search Only、Create Only、Smart 和 Out-of-box 这四种数据构建的策略

UserBuilder.withCountry(“US”).withBuildStrategy(BuildStrategy.SEARCH_ONLY.build();
UserBuilder.withCountry(“US”).withBuildStrategy(BuildStrategy.CREATE_ONLY).build();
UserBuilder.withCountry(“US”).withBuildStrategy(BuildStrategy.SMART).build();
UserBuilder.withCountry(“US”).withBuildStrategy(BuildStrategy.OUT_OF_BOX).build();

测试数据准备3.0时代,将基于 Java 开发的数据准备函数用 Spring Boot 包装成了 Restful API,并且结合 Swagger 给这些 Restful API 提供了 GUI 界面和文档。种统一提供各类测试数据的 Restful API 服务,称为“统一测试数据平台”。
(原来测试数据准备还有发展历史,目前我所知的,只有自己编造测试数据,)

老徐文章 造测试数据
1、直接去数据库,SQL造
2、跑接口,模拟用户操作,就是接口自动化。用Jmeter串联接口或者用Python自己写。
3、封装公司内部的接口平台,提供UI造数据入口,开发给业务测试工程师和相关研发团队使用,提升效率。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值