数据迁移测试方法粗谈

发表于:2009-2-06 15:38

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:小刀    来源:51Testing博客

  数据迁移主要使用在新老系统到切换,主要有两种类型,一种是将老系统的数据全部迁移到新系统中,业务上只使用新系统,老系统不再使用,另外一种是,老系统的部分功能在新系统中暂时无法实现,但是在业务上需要使用新系统,需要将新系统中产生到数据导入到老系统到数据库中,做特殊用途。

  将老系统中到数据迁移到新系统中

  主要到策略有:

  1. 查看老系统中到数据是否完全迁移到新系统中

  要保证新老系统到无缝切换,必须要保证数据的正确性,而将老系统中到数据迁移到新系统,首先就要保证所迁移的数据量是一致的,只要在保证数据量一致的情况下,才能进行其他方面到测试,如果数据量都不一致,说明迁移方法或者脚本就是错误到,需要寻找原因。

  2. 查看新老系统数据库表结构变化

  1) 哪些新表字段在老库中无数据,而新库必须有,这些数据无则默认给什么值

  2) 哪些数据字段一部分有数据,一部分无数据;迁移到新库中无数据这部分如何处理

  3) 旧数据库中的表关系到新库中的表关系有什么变化

  3. 查看新老系统中,相同字段不同状态的变化

  因为新老系统在业务表示上会有一定到差异,用来表示业务状态的标示也会存在有变化,就必须注意新老系统在表示相同业务状态的差异,一般,这种情况会做相应的映射,需要根据映射关系,检查迁移后的数据是否正确。

  4. 查看新老系统中各个字段转换是否正确

  在进行字段检查测试之前,需要准备测试数据,测试数据到准备最好是能够将每个字段到不同情况都考虑到,可以使用矩阵法,用最少的数据覆盖到最多的状态。准备好数据后,根据迁移规则,可以查看各字段迁移后到数据是否正确,一般来说,迁移规则有以下几种。

  1>直接迁移,原来是什么就是什么,原封不动照搬过来,对这样的规则,如果数据源字段和目标字段长度或精度不符,需要特别注意看是否真的可以直接映射还是需要做一些简单运算,还要查看,迁移脚本中是否对长度或精度进行了处理,测试时,也需要准备长度精度不一致到数据进行测试,查看是否能够正确迁移。

  2>字段运算,数据源的一个或多个字段进行数学运算得到的目标字段,这种规则一般对数值型字段而言。

  3>参照转换,在转换中通常要用数据源的一个或多个字段作为Key,去一个关联数组中去搜索特定值,而且应该只能得到唯一值。一般来说,这样的主要适用于某些类似于id的字段

  4>字符串处理,从数据源某个字符串字段中经常可以获取特定信息,例如身份证号。而且,经常会有数值型值以字符串形式体现。对字符串的操作通常有类型转换、字符串截取等。但是由于字符类型字段的随意性也造成了脏数据的隐患,所以在测试这种情况的时候,一定要考虑异常情况。

  5>空值判断,对于老系统中空值字段,不能简单的认为迁移后还是空值,需要根据实际的情况,考虑该字段在新库中应该为哪个字段,还要考虑,如果老系统中该字段不为空的情况。

  6>日期转换,需要考虑新老系统对日期到不同表示方法。

  7>聚集运算,对于事实表中的度量字段,他们通常是通过数据源一个或多个字段运用聚集函数得来的,这些聚集函数为SQL标准中,包括sum,count,avg,min,max。

  8>既定取值,这种规则和以上各种类型规则的差别就在于它不依赖于数据源字段,对目标字段取一个固定的或是依赖系统的值。

  5. 查看迁移后的数据在业务逻辑上是否正确

  使用从老系统中迁移过来的数据,在业务系统中进行流程测试,功能测试确保迁移后到数据可用。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号