匿名职言 自动化测试的前置数据怎么准备?

Clifford Labadie · August 21, 2021 · Last by Meta Haley replied at August 31, 2021 · 3700 hits

有时候我们要测一个用例,这个用例处于整个业务流程的末端,而整个业务的流程链特别长,所以这个时候准备测试数据就特别麻烦。

我现在有三种思路:
1.把数据提前准备好,备份到数据库里,执行用例的时候直接找这个数据执行即可。
2.执行用例的时候现准备数据。
3.通过 mock 的方式,比如 sql,直接在数据库里准备数据到测试用例将要执行的状态

以上三种方式虽然都可以解决问题,但是都有这样或者那样的缺陷,不知道大佬们都是怎么准备数据的?

共收到 11 条回复 时间 点赞

第一个思路的弊端是?

这匿名的名称,搞一些好玩的就好了,什么杨过 郭靖 虚竹啥的

你的测试数据和之前的业务流程有关系吗?有关系的话就不应该直接准备数据到 “将要执行的状态”

Bula Hilll #1 回复

业务变更,导致准备的数据不可用,比如缺少字段,然后给这些缺少的字段补充内容又特别麻烦

肯定是多少有一些关系的

这时候可以考虑构建一个成体系的造数工具了,为啥技术贴也要匿名

之前是用 python 写脚本链接 mysql 准备

几种思路可参考一下:

  1. mock 数据,模拟上游系统的数据,mock 数据很多种方法,直接请求下游入参接口或者直接 sql 逻辑入库,也可以写个存储过程之类的
  2. 弄个造数脚本,并且 api 化,执行用例前直接请求造数 api 后,再执行用例
  3. 自动化框架是纯 code 方式,弄个用例基类,通过用例继承,执行用例时,将造数相关的方法执行
  4. 自动化框架是数据驱动方式,维护一个前置条件,递归找所有的前置条件用例,放在一个集合中,循环执行集合中的所有前置用例后,再执行用例
Bula Hilll #2 回复

阿里味儿 呕

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up