一种用于多库多表造测试数据的装置及方法制造方法及图纸

技术编号:33287737 阅读:14 留言:0更新日期:2022-04-30 23:58
本发明专利技术属于数据库测试技术领域,尤其为一种用于多库多表造测试数据的装置及方法,该用于多库多表造测试数据的装置对所建立的实际数据库与配置文件的配置信息进行比对,查找出差异对实际数据库进行修改,使得实际数据库满足真实业务的使用要求,然后再根据消除差异的数据库获取样本数据,确保获取的样本数据在结构上满足实际数据库测试要求;基于消除差异的实际数据库,采集真实数据生成多份样本数据,然后对生成的多份样本数据进行对比,动态识别需要参数化的字段,并确定相应字段参数化的方式,然后对样本数据进行克隆,替换克隆的数据副本中需要参数化的字段生成新的数据,确保生成的数据更加接近真实数据,保证造数质量,以及造数效率。及造数效率。及造数效率。

【技术实现步骤摘要】
一种用于多库多表造测试数据的装置及方法


[0001]本专利技术属于数据库测试
,具体涉及一种用于多库多表造测试数据的装置及方法。

技术介绍

[0002]数据库是一个长期存储在计算机内的、有组织、可共享、统一管理的大量数据的集合,本质上是用于存放数据的仓库。对于建立的数据库,需要进行测试,数据库测试就是依据数据库设计规范对软件系统的数据库结构、数据表及其之间的数据调用关系进行的测试。数据库的测试内容主要包括:数据库连接测试;数据表增加满;数据表删除空;删除空表中的记录;数据库的健壮性、容错性和恢复能力测试;数据库的安全测试;数据库的容量测试;数据库对象的测试,包括定义的存储过程、视图、触发器、约束、规则等,都要进行测试以保证功能完好;数据库接口测试,包括数据项的修改操作;数据项的增加操作;数据项的删除操作;数据表的并发操作等等。
[0003]一般一个数据库中至少包含一个数据表,数据存储在数据表中,对于多库多表的数据库系统,它的存储空间很大,可以存放百万条、千万条、甚至上亿条数据,因此,在对多库多表类数据库进行测试时,需要大量的测试数据。
[0004]现有用于数据库测试的数据获取过程有以下不足:一是用于测试数据库的数据获取速度十分缓慢。比如,对于银行的金融管理系统的数据库,在存量测试数据的数据量未能满足测试需求的情况下,需要通过交易接口获取数据,虽然获取的数据更接近于实际业务场景,但是通过系统交易接口的方式造数,部分接口耗时过长时会导致整体造数时间长,数据生成效率低,无法及时支持百万级数据量的测试数据量。
[0005]二是获取的数据质量较差。为了提高数据获取速度,一些数据库测试用数据是通过造数程序生成数据,很多造数程序无法保证生成的测试数据的质量,一旦数据表结构发生变化,需要重新调整造数程序,可维护性较差,易用性较低。

技术实现思路

[0006]本专利技术旨在提供一种用于多库多表造测试数据的装置及方法,解决现有技术中数据库的测试数据获取效率低、数据质量较差的技术问题。
[0007]为解决上述技术问题,本专利技术的第一方面是:提供一种用于多库多表造测试数据的装置,包括:配置信息对比模块,所述配置信息对比模块用于对比实际数据库的库表结构与配置文件中配置信息的差异,并输出对比结果;对比结果判断模块,所述对比结果判断模块用于判断所述配置文件中配置信息与实际数据库是否存在差异,如果存在差异,则对所述实际数据库进行检查并进行调整以消除差异;
数据生成模块,所述数据生成模块包括:样本数据生成单元,用于采集真实数据生成多份样本数据;参数化数据识别单元,用于对所述样本数据生成单元生成的多份样本数据进行对比,动态识别哪些字段需要进行参数化,并确定相应字段参数化的方式;样本数据克隆单元,用于复制一份样本数据作为数据副本;参数化数据替换单元,用于替换所述数据副本中需要参数化的字段生成新的数据;数据文件写入单元,用于将所述参数化数据替换单元生成的新的数据写入到数据库能够接收的数据文件;数据导入模块,其用于将所述数据文件写入单元生成的数据文件导入到数据库。
[0008]优选的,所述配置信息对比模块包括:配置文件配置信息获取单元,其用于获取配置文件中涉及的业务场景的数据表的配置信息;实际数据库库表结构配置信息获取单元,其用于获取实际数据库表结构的配置信息;差异对比单元,其用于对比配置文件中各业务场景涉及的数据表的配置信息跟实际数据库的库表结构的差异,以及对比获取配置文件中新增业务场景涉及的数据表的配置信息;对比结果输出单元,其用于输出所述差异对比单元的对比结果。
[0009]优选的,所述参数化数据识别单元确定相应字段参数化的方式包括:用户参数的方式、用户自定义变量的方式、正则提取的方式、函数助手的方式。
[0010]本专利技术的第二方面是:提供一种用于多库多表造测试数据的方法,包括以下步骤:(1)对比实际数据库的库表结构与配置文件中配置信息的差异,并输出对比结果;(2)判断所述配置文件中配置信息与实际数据库是否存在差异;(2.1)如果所述配置文件的配置信息与实际数据库存在差异,则对所述实际数据库进行检查并进行调整以消除差异,然后执行所述步骤(1);(2.2)如果所述配置文件中配置信息与实际数据库不存在差异,则执行步骤(3);(3)生成数据:(3.1)采集真实数据生成多份样本数据;(3.2)对所述步骤(3.1)中生成的多份样本数据进行对比,动态识别哪些字段需要进行参数化,并确定相应字段参数化的方式;(3.3)复制一份样本数据作为数据副本;(3.4)根据参数化的方式,替换所述数据副本中需要参数化的字段生成新的数据;(3.5)将所述步骤(3.4)中生成的新的数据写入到数据库能够接收的数据文件;(4)将所述步骤(3.5)中生成的数据文件导入到数据库。
[0011]优选的,所述步骤(1)包括:(1.1)获取配置文件中涉及的业务场景的数据表的配置信息;(1.2)获取实际数据库表结构;
(1.3)对比所述步骤(1.1)中获取的配置文件中各业务场景涉及的数据表的配置信息跟所述步骤(1.2)中获取的实际数据库表结构的差异,以及对比获取配置文件中新增业务场景涉及的数据表的配置信息;(1.4)输出所述步骤(1.3)中的对比结果。
[0012]优选的,在所述步骤(3.2)中,所述参数化数据识别单元确定相应字段参数化的方式包括:用户参数的方式、用户自定义变量的方式、正则提取的方式、函数助手的方式。
[0013]优选的,在所述步骤(4)中,使用多线程并发的方式,将数据文件的内容高速写入到数据库。
[0014]与现有技术相比,本专利技术的有益效果是:1、该用于多库多表造测试数据的装置对所建立的实际数据库与配置文件的配置信息进行比对,查找出差异对实际数据库进行修改,使得实际数据库满足真实业务的使用要求,然后再根据消除差异的数据库获取样本数据,确保获取的样本数据在结构上满足实际数据库测试要求。
[0015]2、该用于多库多表造测试数据的装置基于消除差异的实际数据库,采集真实数据生成多份样本数据,然后对生成的多份样本数据进行对比,动态识别需要参数化的字段,并确定相应字段参数化的方式,然后对样本数据进行克隆,替换克隆的数据副本中需要参数化的字段生成新的数据,确保生成的数据更加接近真实数据,保证造数质量,以及造数效率。
附图说明
[0016]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1为本专利技术用于多库多表造测试数据的装置一实施例的结构框图。
[0017]图2为本专利技术用于多库多表造测试数据的装置一实施例中配置信息对比模块的结构框图。
[0018]图3为本专利技术用于多库多表造测试数据的装置一实施例中数据生成模块的结构框图。
[0019]图4为本专利技术用于多库多表造测试数据的方法一实施例的流程图。
[0020]图5为本专利技术用于多库多表造测试数据的方法一实施例中对配置文件中配置信息和实际本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于多库多表造测试数据的装置,其特征在于,包括:配置信息对比模块,所述配置信息对比模块用于对比实际数据库的库表结构与配置文件中配置信息的差异,并输出对比结果;对比结果判断模块,所述对比结果判断模块用于判断所述配置文件中配置信息与实际数据库是否存在差异,如果存在差异,则对所述实际数据库进行检查并进行调整以消除差异;数据生成模块,所述数据生成模块包括:样本数据生成单元,用于采集真实数据生成多份样本数据;参数化数据识别单元,用于对所述样本数据生成单元生成的多份样本数据进行对比,动态识别哪些字段需要进行参数化,并确定相应字段参数化的方式;样本数据克隆单元,用于复制一份样本数据作为数据副本;参数化数据替换单元,用于替换所述数据副本中需要参数化的字段生成新的数据;数据文件写入单元,用于将所述参数化数据替换单元生成的新的数据写入到数据库能够接收的数据文件;数据导入模块,其用于将所述数据文件写入单元生成的数据文件导入到数据库。2.根据权利要求1所述的用于多库多表造测试数据的装置,其特征在于:所述配置信息对比模块包括:配置文件配置信息获取单元,其用于获取配置文件中涉及的业务场景的数据表的配置信息;实际数据库库表结构配置信息获取单元,其用于获取实际数据库表结构的配置信息;差异对比单元,其用于对比配置文件中各业务场景涉及的数据表的配置信息跟实际数据库的库表结构的差异,以及对比获取配置文件中新增业务场景涉及的数据表的配置信息;对比结果输出单元,其用于输出所述差异对比单元的对比结果。3.根据权利要求1所述的用于多库多表造测试数据的装置,其特征在于:所述参数化数据识别单元确定相应字段参数化的方式包括:用户参数的方式、用户自定义变量的方式、正则提取的方式、函数助手的方式。4.一种用于多库多表造测试数据的方法,其特征在于,包括以下步骤:(1)对比实...

【专利技术属性】
技术研发人员:陈梓培肖金慧李永辉
申请(专利权)人:辽宁振兴银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1