数据迁移怎么测,都有哪些步骤?

  •  📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢软件测试面试题分享: 1000道软件测试面试题及答案
  • 📢软件测试实战项目分享: 纯接口项目-完整接口文档
  • 📢软件测试实战项目分享:WEB 测试自动化项目实战
  • 📢软件测试学习教程推荐:火遍全网的《软件测试》教程 

前言

什么是迁移测试?

迁移测试是一种将旧系统迁移到新系统的验证过程,以最小的中断/停机时间,实现数据完整性和无数据丢失,同时确保在应用程序运行后满足应用程序的所有指定功能和非功能方面的要求。

迁移系统的简单表示:

数据迁移测试,一般遵循三点--正确性,一致性,可用性。

以下是测试的一般执行步骤:

1.确定迁移范围:确定迁移哪些模块的基础数据
2.整理旧系统与新系统的表结构:找旧系统与新系统数据库表结构的设计文档,来了解表及字段的详细信息
3.整理旧系统与新系统的字段匹配值匹配关系:
4.太体核心流程使用电数据测试:核心旧数据套用系统核心流程测试真看是否有验证bug出现
5.基础数据测试:

(1) 基于数据库直接看字段储存的值进行测试

(2) 基于用户登录前台系统进行查看表所在相应菜单字段展现的值

(3)基于查看迁移过来数据的总条数是否正确

6.数据可用性测试
7.业务全场景覆盖测试:旧数据在新系统操作流程是否受到阻碍,新数据在新系统操作流程是否受到阻碍
数据迁移的测试点分为页面构造数据测试点和数据库测试点,下面就分别来总结以下两者常见的测试场景

页面构造数据测试点:

(1)构造界面字段最长值的数据,测试两边字段长度限制差异
(2)各种格式的数据,测试两边字段格式限制差异
(3) 字段全填的数据,测试两边字段是否会丢失或者迁移错位
(4) 字段默认值的数据,测试两边字段默认值是否显示-致
(5)重要下拉字段的所有情况,测试迁移是否显示正确

(6)对旧系统有新系统没有的字段,验证是否迁移过去
(7)旧系统没有,新系统有的字段,验证是否给与正确的默认值
(8)针对新旧系统字段的唯-值判断构造数据测试验证
(9)针对新旧系统字段的是否为空构造数据测试验证
(10)字段各种区间数据,测试新旧系统字段的范围限制数据库测试点:
 

数据库测试点:

1)旧数据库中的表迁移到新数据库中表有什么变化
2)哪些字段在旧数据库中中不存在,而新数据库必须有,这些数据在新数据库中默认值
3)哪些数据字段一部分有数据,一部分无数据, 迁移到新库中无数据这部分如何处理
4)数据库中表字段采用代码编码的,查看新旧数据库是否一致
 

最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/324514.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

报错解决:Error creating bean with name ‘userServiceImpl‘

首先:spring整合MyBatis是出现这个错误: Exception in thread "main" org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name userServiceImpl: Unsatisfied dependency expressed through fiel…

QT上位机开发(网络程序界面开发)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 传统的上位机对接方式还是以232、485、can为主,随着网络的发展,越来越多的设备都是以网络进行通信的。毕竟相比较之前&…

对useradd进行简单扩展(shadow项目)

《 移植useradd到嵌入式Linux设备-CSDN博客》该篇文章简单描述了移植useradd命令(当然还附带其他相关的命令)步骤,十分丝滑地得到了目标文件,拷贝到嵌入式Linux设备后,通过类似下面的命令添加用户和密码到系统&#xf…

Dart调用JS对10000条定位数据滤波

使用Dart调用JS,还是为了练习跨语言调用; 一、编写对应的JS代码 平时在开发时不推荐将算法放在JS里,我这里是简单的做一下数据过滤; 首先生成一些随机定位数据,在实际开发中可以使用真实数据; // 随机定…

自定义标记

章节目录: 一、概述二、使用自定义标记三、注册自定义标记3.1 创建文件3.2 修改文本编码格式 四、执行测试五、结束语 一、概述 pytest 可以支持自定义标记,自定义标记可以把一个 web 项目划分多个模块,然后指定模块名称执行。譬如我可以标明…

创意与技术的结晶:AI魔法绘图与中文描述的完美结合

在人类文明的长河中,创意与技术一直是推动发展的重要动力。随着科技的日新月异,人工智能(AI)在创意领域的应用逐渐崭露头角,而AI魔法绘图与中文描述的结合,更是将这一趋势推向了新的高度。AI魔法绘图是一种…

一文上手ThreadLocal使用和原理

什么是ThreadLocal?它有什么用? 当我们某个类需要被多线程共享的时候,我们就可以使用ThreadLocal关键字,ThreadLocal可以为每个线程创建这个变量的副本并存到每个线程的存储空间中(关于这个存储空间后文会展开讲述),从而确保共享…

citeSpace保姆级安装使用教程

citeSpace保姆级安装使用教程 文章目录 citeSpace保姆级安装使用教程CiteSpace功能与参数区安装使用知网数据导出citespace数据导入结果 设置操作隐藏节点 CiteSpace功能与参数区 安装 citeSpace安装教程 citespace下载 网址:https://citespace.podia.com/ 安装之…

leetcode:2784. 检查数组是否是好的(python3解法)

难度:简单 给你一个整数数组 nums ,如果它是数组 base[n] 的一个排列,我们称它是个 好 数组。 base[n] [1, 2, ..., n - 1, n, n] (换句话说,它是一个长度为 n 1 且包含 1 到 n - 1 恰好各一次,包含 n 两…

【Linux】Linux Page Cache页面缓存的原理

Page cache(页面缓存)是计算机操作系统中的一种机制,用于将频繁访问的数据从磁盘存储到内存中,以便更快地访问。当程序从磁盘请求数据时,操作系统会检查该数据是否已经存在于页面缓存中。如果存在,数据可以…

基于web3.js和ganache实现智能合约调用

目的:智能合约发布到本地以太坊模拟软件ganache并完成交互 准备工作: web3.jsganache模拟软件 ganache参数配置 从ganache获取一个url,和一个账号的地址, url直接使用图中的rpc server位置的数据即可 账号address从下列0x开头…

filecoin通过filutils 区块浏览器获取历史收益数据

filecoin 历史收益数据 每天每T平均收益 导出历史每日收益为文档 filutils 区块浏览器 导出历史每日收益为文档 #!/bin/bashfor i in {1..10} doecho $iresult$(curl --location --request POST https://api.filutils.com/api/v2/powerreward \--header User-Agent: Apifox/1.…