当前位置:网站首页>在迁移测试中,源表、中间表、目标表的迁移规则
在迁移测试中,源表、中间表、目标表的迁移规则
2022-08-02 21:26:00 【小梧敲代码】
以银行的核心系统从旧核心系统更换为新核心系统为基础,对导入到迁移环境的生产数据(已脱敏)进行数据的验证。
数据迁移环境
迁移环境需要A、B两套环境。其中,A环境为新系统环境、B环境为老系统环境。
数据迁移小组
迁移小组:由迁移技术人员、业务人员和测试人员组成。负责迁移规则的验证、数据的静态核对;迁移规则的验证为全部验证,而数据的静态核对,则进行抽验。
数据迁移的验证
迁移规则的验证
迁移过程为源表中间表目标表,技术测试验证源表中间表、中间表目标表之间迁移测试的一致性,确保迁移数据全部符合按照迁移规则,确保老核心系统中需要迁移的数据都能全部迁移到新一代核心系统中。
数据的静态验证
在数据迁移成功后,迁移小组根据业务需求对关键业务数据展开源系统与目标系统的直接比对。
比如存款账户、卡档案信息、非结清类贷款、正在使用的凭证、未解冻/解挂的信息等有效的账务业务数据汇总数据的核查和关键数据的抽验。
对于源系统到目标系统存在这种简单关系直接进行源数据表和目标数据表的比对,这部分由程序进行。迁移小组进行核对方式包括汇总核对、明细核对、账务核对。
汇总核对
以中间表为参照,根据每张迁移表的特点,设计不同维度的统计条件,分别统计源表、目标表的数据量、金额等,全方位保证迁移数据的完整性。统计维度包含但不限于:网点、币种、产品、状态、业务种类、凭证种类、客户类型等。
明细核对
1)数据准确性
根据迁移规则,核对源表中间表、中间表目标表的数据准确性,直接迁移或映射的字段对比字段值,有加工规则的按规则加工后核对。
对于源表、目标表字段类型不一致的,关注类型转换是否正确。
对于源表、目标表长度不一致的,关注是否出现截取造成数据失真。
2)数据合法性
检核迁移数据的合法性,对迁入目标表的迁移数据进行检核,保证迁移数据在新系统的表中的合法性以及关联关系。
账务核对
迁入后新系统比如新核心与中间表之间包括存款、内部资金、现金、重空等不同储种、币种、产品的余额、积数移入前后是否一致。
数据验证的关注点
1)单字段检核注意事项
检查数据是固定字段的取值范围和格式。
缺省字段的检查:如表字段不允许为空。
标准参数的检核:如币种、账户状态、客户类型、凭证种类等。
日期合法性检核:如日期格式合法。
2)多字段检核注意事项
检查表中多个字段间关联和约束关系。
表字段中冻结止付金额有值:则检查冻结止付状态是否生效。
销户日期有数据:则检查销户日期大于等于开户日期,状态为销户。
活期利息:则检查利息=积数*利率。
可用余额:则检查可用余额=余额-冻结金额-止付金额。
3)多表间数据关联与约束性检核
检查机构号是否存在机构信息表中;
检查柜员是否存在机构柜员表中;
产品码是否存在产品信息表中;
币种是否存在币种表中;
客户号是否存在客户信息表中;
还款账号是否存在活期账户表中;
凭证种类是否存在凭证种类登记薄中;
账户冻结是否存在冻结解冻登记薄中;
账户止付是否存在止付解付登记薄中;
卡号是否存在卡介质登记薄中。
业务比对验证测试
迁移完成后,迁移小组中的业务人员,挑选有代表性的数据(如:本行每个行所挑选对公客户及其存款、贷款账户20条,或每个行所挑选50条对私客户及其账户)进行逐条比对。
挑选数据的原则是覆盖各种业务数据种类,每种类型都需要抽样几笔,比对重要字段的正确性。
业务人员从业务角度提出核对报表、清单,对迁移数据进行汇总核对。
小结
迁移测试中,数据迁移是整个迁移方案中最基础的环节,而迁移数据的正确性为整个迁移测试提供最基本的数据保障。因此,迁移数据的核检是整个迁移测试方案中最重要的一环。
最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!
这些资料,对于想转行做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……
如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。
敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。
自学推荐B站视频:
零基础转行软件测试:自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!
自动化测试进阶:已上岸华为,涨薪20K,2022最适合自学的python自动化测试教程,自己花16800买的,无偿分享
边栏推荐
猜你喜欢
Do you understand the factory pattern?
Use the TCP protocol, we won't lost package?
用户之声 | 大学生的“课外学堂”
圆锥折射作为偏振计量工具的模拟
Zabbix 5.0 Monitoring Tutorial (2)
UDP (User Datagram Protocol)
How does Redis easily achieve system instant kill?
Add and delete all these years, finally planted in MySQL architecture design!
CS5213芯片|HDMI to VGA转换头芯片资料分享
ICLR 2022最佳论文:基于对比消歧的偏标签学习
随机推荐
面试官:可以谈谈乐观锁和悲观锁吗
[Dry goods] Best practice of sub-library and sub-table
hi!Don't look at how to SAO gas dye-in-the-wood in MySQL?
Interviewer: can you talk about optimistic locking and pessimistic locks
golang刷leetcode:统计区间中的整数数目
2022-08-02 第六小组 瞒春 学习笔记
面试官居然问我:删库后,除了跑路还能干什么?
Flink-SQL
Flink优化的方方面面
Flink优化及相关
What is the core business model of the "advertising e-commerce" that has recently become popular in the circle of friends, and is the advertising revenue really reliable?
Use the TCP protocol, we won't lost package?
How many ways do you know the singleton pattern?
ICLR 2022最佳论文:基于对比消歧的偏标签学习
回文自动机+CodeTON Round 2 C,D
博客主题美化第二弹
嗨!不来看一下如何骚气十足的登陆MySQL嘛?
Summary of @Transactional transaction invocation and effective scenarios
win10桌面图标全部变成白色的怎么办
js how to get the browser zoom ratio