在迁移到新版本的应用程序时,如果数据库结构、存储对象或数据转换逻辑发生变化,就需要进行数据迁移测试。
应用程序的演变需要定期更新、从过时的系统迁移以及进行架构变更。通常,数据迁移被视为技术性任务,但如果没有适当的控制,测试人员会定期收到事件报告——从数据丢失到数据转换不正确。
主要困难:
正确的手动测试过程包括:
关键特点:
可以使用完全合成的数据进行迁移测试吗?
不可以。合成数据往往无法反映真实的关系和历史案例,重要的是用真实的匿名样本进行补充。
仅比较迁移前后记录的总数是否足以确认正确性?
不可以。在数据转换错误或数据不完整的情况下,记录的数量可能一致。重要的是分析内容和字段的正确性。
需要在空库上检查迁移吗?
必须。这种检查可以发现边界错误场景(例如,空目录,缺少关键记录)。
在迁移过程中只检查了“新”用户数据。逻辑错误在稍后揭示,当时需要罕见使用的历史数据(例如,旧订单)。
优点:
缺点:
创建了真实和归档(匿名化)数据的样本,迁移在它们以及空且高度碎片化的数据库上进行测试。
优点:
缺点: