一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据库测试环境的构建方法及装置与流程

2022-06-02 06:50:02 来源:中国专利 TAG:


1.本发明涉及数据安全技术领域,尤其涉及一种数据库测试环境的构建方法及装置。


背景技术:

2.现有技术中,各种数据安全管理平台层出不穷,合规的数据安全管理平台能够将数据分类分级管理,无论数据存储于何种介质。所以在测试数据安全管理平台的数据统一管理功能和分类分级功能时,需要各种数据库环境并且数据库中还需要包含各种模拟的敏感测试数据。
3.现有技术中并没有很好的方法快速构建各类数据库的测试环境。


技术实现要素:

4.本发明实施例提供一种数据库测试环境的构建方法及装置,用以实现快速构建各类数据库的测试环境,尤其适用于对敏感敏感数据测试环境的构建。
5.本发明实施例提出一种数据库测试环境的构建方法,包括:
6.确定用户需要创建的目标数据库信息;
7.基于目标数据库信息获取数据库镜像;
8.确定用户需要入库的目标数据;
9.基于所述数据库镜像创建目标数据库的数据容器,并基于所述数据容器将需要入库的目标数据入库,以完成测试环境的构建。
10.在一些实施例中,所述目标数据库信息包括目标数据库的类型和版本;
11.基于目标数据库信息获取数据库镜像包括:
12.判断本地是否包含对应类型和版本的数据库镜像;
13.在本地不包含对应类型和版本的数据库镜像的情况下,从公网获取所述数据库镜像。
14.在一些实施例中,确定用户需要入库的目标数据之后,所述构建方法还包括:
15.基于需要入库的目标数据,判断是否需要实时生成相关数据;
16.在判断需要实时生成相关数据的情况下,通过反推正则表达式,生成符合规则的相关数据。
17.在一些实施例中,用户需要入库的目标数据包括目标数据集和数据条目数,判断是否需要实时生成相关数据包括:
18.判断当前数据集中的数据条目数是否满足用户需求;
19.在当前数据集中的数据条目数不满足用户需求的情况下,判断需要实时生成相关数据。
20.在一些实施例中,在判断需要实时生成相关数据的情况下,所述构建方法还包括:
21.利用扩展正则的方式,生成不同数据类型的相关数据。
22.在一些实施例中,按照预设格式,导出目标数据。
23.在一些实施例中,所述构建方法还包括:
24.在本地持久化存储多个数据库镜像;
25.为各用户配置权限,以实现该用户基于相应的权限对本地持久化的数据库镜像进行管理。
26.本发明实施例还提出一种数据库测试环境的构建系统,包括处理器,其配置为:
27.确定用户需要创建的目标数据库信息;
28.基于目标数据库信息获取数据库镜像;
29.确定用户需要入库的目标数据;
30.基于所述数据库镜像创建目标数据库的数据容器,并基于所述数据容器将需要入库的目标数据入库,以完成测试环境的构建。
31.本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现本公开各实施例所述的数据库测试环境的构建方法的步骤。
32.本发明实施例利用容器创建技术,基于用户选取的数据库镜像创建目标数据库,并基于所述数据容器将需要入库的目标数据入库,从而能够搭建任意的敏感数据测试环境,实现快速构建各类数据库的测试环境,尤其适用于对敏感敏感数据测试环境的构建。
33.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
34.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
35.图1为本技术实施例的数据库测试环境的构建方法的基本流程图;
36.图2为本技术实施例的数据库测试环境的构建方法的总流程图;
37.图3为本技术数据库测试环境的构建系统的基本框架示意图。
具体实施方式
38.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
39.本发明实施例提供一种数据库测试环境的构建方法,如图1所示,包括如下步骤:
40.在步骤s101中,确定用户需要创建的目标数据库信息。具体的可以提供输入界面,根据用户选择的需要创建的数据库类型和版本,来确定用户需要创建的目标数据库信息,本示例中所述的数据库的类型可以包括mysql;postgresql;oracle-xe;redis;mongodb;mariadb等,具体在此不做一一限定。
41.在步骤s102中,基于目标数据库信息获取数据库镜像。在一些实施例中,所述构建方法还包括:在本地持久化存储多个数据库镜像,并为各用户配置权限,以实现该用户基于相应的权限对本地持久化的数据库镜像进行管理。具体的还可以在本地对镜像打标签,通过标签可以筛选任意的用户所需的镜像,可以按项目管理镜像权限,还可以按用户管理镜像权限,根据用户需求实例化某个镜像,或者将由镜像实例化的测试容器重新打包为新镜像。
42.在步骤s103中,确定用户需要入库的目标数据,具体的可以为用户提供选择界面,从而根据用户的选择确定用户需要入库的目标数据,目标数据可以是一个或多个敏感测试数据集,每个敏感测试数据集包括指定条目的测试数据。
43.在步骤s104中,基于所述数据库镜像创建目标数据库的数据容器,并基于所述数据容器将需要入库的目标数据入库,以完成测试环境的构建。本实例中可以根据获取的数据库镜像进行实例化以创建目标数据库,并将用户选择的敏感测试数据入库,从而完成对应的敏感数据的搭建。
44.本示例的方法可以生成各类敏感测试数据和测试环境,例如身份证号、手机号、省份、民族、ip、mac、纳税人识别号、邮编、护照、学历、车牌号等。本发明实施例利用容器创建技术,基于用户选取的数据库镜像创建目标数据库,并基于所述数据容器将需要入库的目标数据入库,从而能够搭建任意的敏感数据测试环境,实现快速构建各类数据库的测试环境,尤其适用于对敏感敏感数据测试环境的构建。
45.在一些实施例中,所述目标数据库信息包括目标数据库的类型和版本,基于目标数据库信息获取数据库镜像包括:判断本地是否包含对应类型和版本的数据库镜像,例如可以根据数据库的类型和版本判断本地是否持久化有该数据库镜像。如图2所示,在本地不包含对应类型和版本的数据库镜像的情况下,从公网获取所述数据库镜像。具体的本示例中可以利用与各种数据库的适配器,实现与各种数据库进行通信,本示例中和各类数据库通信的意思是可以连接到各类数据库,例如navicata这种连接工具,可以用于将系统生成的测试数据入库。在本地不包含对应的类型和版本的数据库镜像的情况下,从公网下载,从而满足用户的测试需求。
46.在一些实施例中,确定用户需要入库的目标数据之后,所述构建方法还包括:基于需要入库的目标数据,判断是否需要实时生成相关数据。在一些实施例中,用户需要入库的目标数据包括目标数据集和数据条目数,判断是否需要实时生成相关数据包括:判断当前数据集中的数据条目数是否满足用户需求;在当前数据集中的数据条目数不满足用户需求的情况下,判断需要实时生成相关数据。也即在当前数据集中的数据条目数是否满足用户需求,在判断需要实时生成相关数据的情况下,通过反推正则表达式,生成符合规则的相关测试数据。在反推正则表达式,还可以对正则表达进行测试,测试正则是否能正常反推出测试数据并生成目标条目数的测试用例回显给用户,可以让用户判断是否生成了其想要的数据类型,如果数据符合用户要求则该正则条目校验通过,否则校验不通过。通过反推正则生成额外的数据进行补齐,并将新生成的测试数据添加到该数据集中,从而实现了对数据集的扩充。本技术的方法可以根据正则快速生成任意条目数的敏感测试数据,降低研发和测试人员寻找各类测试数据的时间成本。
47.在一些实施例中,在判断需要实时生成相关数据的情况下,所述构建方法还包括:
利用扩展正则的方式,生成不同数据类型的相关测试数据。通过扩展正则,生成更多类型的测试数据,并且提供正则调试页面,方便用户调试正则表达,以生成符合预期的测试数据。现有技术中不能实现对敏感数据的目标数据集进行有效的扩展,本技术的方法能够利用正则以及扩展正则的方式对数据集中的测试数据进行扩充,并且扩充的数据满足预期要求。
48.在一些实施例中,按照预设格式,导出目标数据。例如可以将测试数据导出为csv和json文件,丰富测试数据的使用场景。
49.本技术的数据库测试环境的构建方法可以从数据集中获取,还可以通过反推正则表达式生成符合正则表达式的测试数据。在生成测试数据时,当数据总条目数超过数据集内置的数据条目数时,会通过反推正则生成额外的数据进行补齐,并将新生成的数据添加到数据集中,对数据集进行扩充。通过镜像实例化数据库容器,然后识别需要适配的数据库类型和版本,最后将数据进行入库,实现搭建包含敏感测试数据的数据库环境。本技术的方法可以采用界面的方式由用户输入各种参数,由系统全自动构建数据库测试环境,降低用户的学习成本,系统全生命周期管理数据库测试环境,有效利用系统硬件资源。
50.本发明实施例还提出一种数据库测试环境的构建系统,包括处理器,其配置为:
51.确定用户需要创建的目标数据库信息;
52.基于目标数据库信息获取数据库镜像;
53.确定用户需要入库的目标数据;
54.基于所述数据库镜像创建目标数据库,并基于所述数据容器将需要入库的目标数据入库,以完成测试环境的构建。
55.如图3所示,本示例中的数据库测试环境的构建系统
56.包含三大管理模块,分别是系统管理模块、数据管理模块和镜像管理模块,数据分别存储在三个数据库中,方便各类数据的迁移,下面将说明各个模块的具体功能:
57.系统管理模块包括:
58.用户管理子模块:该子模块用于管理系统的用户,例如用户的增删改查。
59.权限管理子模块:该子模块用于管理各个用户的权限,可以限制每个用户能访问的具体功能模块。
60.规则管理子模块:该子模块用于对正则进行管理,包括正则的增删改查,正则合法性校验。
61.规则调试子模块:该子模块用于测试正则是否能正常反推出测试数据并生成一定条目数的测试用例回显给用户,让用户判断是否生成了其想要的数据类型,如果数据符合用户要求则该正则条目校验通过,否则校验不通过。
62.数据管理模块包括:
63.数据校验子模块:该子模块用于校验生成的测试数据是否符合正则
64.数据导出子模块:该子模块用于导出测试数据到文件,例如csv文件、json文件;例如可以定义导出的数据格式,例如导出包含n行n列的csv文件。
65.数据入库子模块:该子模块用于将数据入库,可以动态适配各种数据库,包括mysql;postgresql;oracle-xe;redis;mongodb;mariadb等。
66.数据生成子模块:该子模块用于通过正则生成测试数据,提供两种生成方式,一种是逆推出符合正则的数据,另一种是按照预设好的集合生成测试数据。
67.镜像管理模块,包括:
68.镜像拉取子模块:该子模块支持从公网搜索镜像并拉取到本地。
69.镜像实例化子模块:该子模块用于运行数据库容器,用户可以选择运行的数据库类型、数据库版本、实例个数、实例组别。
70.镜像导出功能子模块:该子模块用于将镜像导出为tar文件并提供给用户下载,让用户可以轻松移植各个镜像。
71.镜像导入子模块:该子模块用于从tar文件导入镜像到系统中。
72.系统数据库:存储有系统相关数据,主要与系统模块交互
73.测试数据数据库:存储有生成的各类测试数据,并按照用户需求建立相关表结构,方便用户重复使用。测试数据库与系统数据库完全分开,方便移植到其他环境使用。
74.镜像数据库:持久化存储各种数据库镜像,通过导入模块导入的镜像或通过镜像拉取模块下载的镜像都会存储在该数据库中。
75.本技术的构建系统能够快速构建满足数据安全管理平台测试需求的环境的系统,系统的功能有:能够通过正则生成各种模拟敏感数据并且,支持通过扩展正则增加生成的数据类型,支持将数据导出到文件。基于容器技术创建各种数据库的虚拟环境并且支持通过上传镜像的方式扩展支持的数据库类型。能够将模拟敏感数据自动化入库。支持将包含模拟敏感数据的容器重新打包为镜像,易于迁移。
76.本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现本公开各实施例所述的数据库测试环境的构建方法的步骤。
77.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
78.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
79.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
80.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献