Python 自动化测试产生的数据该如何回收呢?

Lacy · 2022年03月11日 · 最后由 Lacy 回复于 2022年03月21日 · 2530 次阅读

各位大佬有没有什么好的建议,或者是方法

共收到 5 条回复 时间 点赞

自动化测试产生的什么数据?

如果指的是数据库数据,思路上可以整个数据库 DML 在执行前 dump 下来,执行完毕后删数据重新把 DML 恢复回去。

但实际业务上,评估了性价比后,我们没有做回收。

测试环境并不是专用自动化环境的话,用上面说的方式会影响其他人日常使用。如果一个一个表去恢复数据的话,表结构比较复杂,或者数据分散存储在多个服务中的话,回收成本很高,需要梳理清楚整个数据流,而且维护要跟上,稍有不慎就变脏数据。
还不如每次重新注册个新账号来得简单。

极少数场景不回收不行的(比如线上有些场景要用真实手机号且按流程只能走一遍,账号比较有限)的,再针对性开发相关的回收功能。

  1. 单独搞个隔离的干净环境
  2. 数据库备份替换
  3. 规模小又不影响的话就不回收
  1. 测试单独部署一个环境,在上面随便搞,搞完全量清除下次再用
  2. 测试数据添加一个标识,比如 id 或者 name 统统以某种特征开头,测完后手工 sql 删除
  3. 参考 3 楼
Lacy #1 · 2022年03月21日 Author

因为要考虑到测试环境、预发环境和生产环境,不能在生产上产生测试数据,所以要求测试数据回收处理(说白了就是删除测试数据)

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册