将数据库恢复到特定状态以进行测试[英] database restore to particular state for testing

本文是小编为大家收集整理的关于将数据库恢复到特定状态以进行测试的处理方法,想解了将数据库恢复到特定状态以进行测试的问题怎么解决?将数据库恢复到特定状态以进行测试问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我们使用 Oracle(或 postgres)数据库和应用服务器来执行集成测试.为了将每个测试与另一个测试隔离开,在每个测试之前删除并重新创建数据库模式.

如您所见,这是一个耗时的过程.该应用程序使用 100 多个表.我们正在考虑编写自定义 sql 以从每个表中删除不需要的数据.有没有更好的方法来保存和恢复数据库状态?

(看来 DBUnit 可以做到这一点,我还没有尝试过.)

单个测试涉及:

  • 创建数据库架构.
  • 启动应用服务器.
  • 启动多个客户端应用程序.
  • 执行并验证.

我们有 5000 次奇怪的测试,耗时 700 小时左右.(我们在网格环境中完成,一夜之间完成)

大多数测试使用较小的数据大小,例如最多 10 MB.

推荐答案

Oracle Flashback 允许您使用简单的 SQL 查询在指定时间点恢复表.文档可在此处获得.

不知道Postgre有没有类似的功能.

本文地址:https://www.itbaoku.cn/post/1764118.html