说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

数据库迁移测试:选白盒还是黑盒?

HTML文档下载 WORD文档下载 PDF文档下载
当公司决定升级或更改数据库时,需要将现有的数据传输至新的数据库。测试人员或许会对此感到苦恼,究竟是采用黑盒还是白盒测试?文中将两者进行了对比,帮助测试人员作出更好的决策。

数据迁移是指从现有数据库迁移至一个新数据库的过程。在现实工作中我们也会经常接触到,当公司决定升级或更改数据库时,那么这就需要将现有的数据传输至新的数据库。

创建一个有效的数据迁移测试策略对降低风险和成功迁移有着莫大的作用。本文分享了如何使用黑盒或白盒方法来创建一个更加有效的数据迁移测试方法。


数据迁移的范围范围很广,包括满足所有所需数据的需求,确保新的数据库能正常启动并成功运行,零缺陷(之前的数据库是否还有遗留数据)并且将数据迁移至正确的列表中。

因此,为了保证它的正确性唯一的方法就是测试迁移过程。在这个过程中要进行迁移需求分析,内容包括:

  • 被迁移的数据类型;
  • 数据来源;
  • 文档分析,描述迁移过程;
  • 数据库改动分析;
  • 数据库架构、类型;
  • 数据存储格式;
  • 迁移方法分析;
  • 迁移途径;

只要进行分析测试,就要选择迁移的类型,这里有三种方法:

  1. 黑盒测试;
  2. 白盒测试;
  3. 混合测试;

分析结果并不是唯一的参数选择方法。你还需要注意任务的复杂性,客户和项目经理的偏好,员工对数据库管理系统的规范以及其他一些细节。此外,还要区分数据库源,接收器和数据存储格式之间的差异及任务的复杂性。


黑盒测试

黑盒测试是人们最常使用的方法,包括运行数据迁移的功能测试。测试人员需要检查处理的数据,包括:数据概述、变更、搜索、创建以及其他一些业务。这种方法,从测试人员角度来讲并不需要额外的知识。

执行黑盒测试的测试方法允许在负载测试复杂的进程前定义与系统不相符的性能需求。它能检测出由多个用户使用多个数据库产生的错误并且在进程请求处理中进行修改。

功能测试在数据迁移测试中并不是最主要的。性能和负载测试同样不容忽视。高质量的操作进程定义了新的数据库的高效和准确性。

白盒测试

白盒测试主要用于迁移脚本的逻辑检查。包括与数据库源、接收器,QA工程师的测试完整性以及脚本的正确性。要想启动白盒迁移测试数据库应该符合以下几点要求:

  1. 详细的脚本描述(以防止不正确或不完整的数据迁移问题);
  2. 源结构和接收器;
  3. 数据迁移映射(制定迁移规则);

测试人员最终启动测试过程,需要通过以下几点:

  • 检查迁移的注册数量;
  • 数据迁移至适当的地方;
  • 数据完整性;
  • 填充字段;
  • 适当的源和接收器字段处理;
  • 计算业务逻辑的变化;

根据这些要点核查迁移脚本,测试人员针对SQL代码进行分析。该方法包括数据库结构细节、所使用的数据存储格式、迁移需求、物质分析等等,都需要对它们进行区别分析并做出正确处理。其中,字段和脚本迁移转换的格式也同样很重要。

白盒测试方法需要测试人员掌握遗留数据库以及新的数据库架构方面的相关知识,这一点与黑盒测试不同。

不过,你很少会看见采用纯粹的黑盒或白盒方法,通常情况下,开发者会采用混合的测试方法。在混合的测试方法中QA工程师先要检查迁移脚本的逻辑结构(白盒测试),然后运用该应用上的功能测试(黑盒方法)检查已迁移的数据。

通过对比测试人员可以基于此作出更好的决策。

英文出自:SoftwareTestingMagazine

相关内容:软件测试人员的基本修养

(文/夏梦竹 审校/张红月)

推荐2013年最佳PHP开发框架 Patrick Wyatt:代码没问题 程序却有bug? NoSQL的可靠性及扩展操作 最新Skype加密技术:“无声”通话能躲过FBI监听 谷歌锁死SDK,能阻止Android碎片化吗? 我在编写程序时,有时系统会提示内存溢出,请问是何原因,遇到此类问题该如何解决. 大虾们 请进 为什么没见服务器名字? 2000 server进程问题!!!!!!!!!!!!!!!!!!! 如何在Delphi中不连接数据库而执行SQL语句!! 求一触发器,今天就揭贴! dataset的更新问题 ado.net取消了游标,我如何知道dataset或者视图中的当前行 Delphi7连接Sql Server2000 用哪种连接方式最好? 英语翻译“我们都必须坚强,坚强到用我们那并不强壮的 英语翻译How the Elephant got 已知二次函数y=ax+bx+c(a>0)的图像经过 有一千个读者就会有一千个哈姆雷特的英文翻译及出处 一千个读者眼中有一千个哈姆雷特怎么用英语翻译 一千个人心中有一千个哈姆雷特英语翻译 如图有一个四边形ABCD,已知角A=角C=90度, 有一个四边形ABCD,已知角A=角C=90°,角D 英语翻译本人性格开朗,谦虚自律,能熟练操作Word 慈溪公司老总险被绑架 主谋是自己昔日垂涎女孩美色 男子宁波当街袭胸总在肯德基过夜的流浪女诞下龙凤胎 帮国内唯一留存最完整红色刊物在温州埋藏西湖龙井红茶开始崭露头角 价格每斤8宝宝着凉腹泻 别急着挂吊瓶灰霾高发期尽量绿色出行冬博会成中国冬季旅游向西开放的平台西媒:一场伟大的对决 C罗就是葡萄牙不去旅游 不给学分?韩综之王牌秦疆原始宠妻混沌战记黎明的前夜金上京会宁府遗址旅游金太祖陵址公园旅游金上京历史博物馆旅游中国唐苑旅游溧阳吴楚农耕文化园旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘