数据库生成测试数据的方法、装置、终端及介质制造方法及图纸

技术编号:22166625 阅读:29 留言:0更新日期:2019-09-21 10:27
本发明专利技术属于数据库技术领域,公开了一种数据库生成测试数据的方法、装置、终端及介质,通过获取需要生成测试数据的数据库表及所述数据库表中数据的数据类型,再将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的数据范围,再在所述数据范围内,随机生成目标数据,最后根据预设的所述测试数据的插入规则,将生成的目标数据插入到所述数据库表中,提高了数据库中数据插入的效率。

The Method, Device, Terminal and Media of Generating Test Data in Database

【技术实现步骤摘要】
数据库生成测试数据的方法、装置、终端及介质
本专利技术涉及数据库
,尤其涉及一种数据库生成测试数据的方法、装置、终端及介质。
技术介绍
数据库(Database,DB)是长期存储在计算机内的、有组织的、可共享的、统一管理的数据集合,是一个按数据结构来存储和管理数据的计算机软件系统。目前,常用的数据库有Oracle数据库、SQL(StructuredQueryLanguage,结构化查询语言)数据库、Sybase数据库等。在进行软件测试时,采用现有技术录入测试数据时,录入过程繁琐且耗时较长,测试数据的录入效率较低;而且采用编写的程序录入测试数据时,由于该程序指定的规则有限,会使得录入的测试数据不完整、不全面,导致录入的数据与预期目标相差较大。因此,在开发与测试过程中,经常需要往数据库中插入假数据,目前存在两种方法插入测试数据:一是手动插入,这种方法费时费力;二是编写脚本程序插入,这种方法要求操作者有较强的脚本编写能力,而且,针对不同的数据库,不同的表结构,要编写不同的脚本程序,同样需要耗费大量时间。上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
本专利技术的主要目的在于提供了一种数据库生成测试数据的方法、装置、终端及介质,旨在提高数据库中测试数据插入的效率。为实现上述目的,本专利技术提供了一种数据库生成测试数据的方法,所述方法包括:获取需要生成测试数据的数据库表及所述数据库表中数据的数据类型;将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围;在所述取值范围内,随机生成目标数据;根据预设的所述测试数据的插入规则,将生成的目标数据插入到所述数据库表中。优选地,所述数据类型为数值数据;相应地,所述将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围的步骤,包括:将所述数据库表中预先存储的与所述数据类型对应的区间范围,作为所述测试数据的取值范围。优选地,所述数据类型为语句;相应地,所述将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围的步骤,包括:获取所述数据库表中预先存储的与所述数据类型对应的带标签的训练样本数据,并生成对应的分类词向量;将所述分类词向量正向输入已训练的自编码神经网络模型,得到样本数据的隐含特征;计算样本数据的所述隐含特征的向量差,并作为所述测试数据的取值范围。优选地,所述在所述取值范围内,随机生成目标数据的步骤,包括:获取所述数据库表中预设的参考数据,并生成所述参考数据对应的文本词向量;将所述文本词向量逆向输入已训练的自编码神经网络模型,得到所述自编码神经网络模型的中间隐层的隐含特征;在所述取值范围内随机生成取值需求,并根据生成的取值需求修正所述隐含特征;将修正后的隐含特征作为所述自编码神经网络模型的中间隐层,自所述中间隐层逆向生成所述自编码神经网络模型的输入层对应的词向量;根据生成的词向量,生成对应的文本,作为目标数据。优选地,所述在所述取值范围内随机生成取值需求,并根据生成的取值需求修正所述隐含特征的步骤,包括:在所述取值范围内,随机生成所述隐含特征对应的调节向量;将所述隐含特征与所述调节向量的向量差,作为修正后的隐含特征。优选地,所述自编码神经网络模型的中间隐层为多层时;相应地,所述将所述文本词向量逆向输入已训练的自编码神经网络模型,得到所述自编码神经网络模型的中间隐层的隐含特征的步骤,包括:将所述文本词向量从已训练的自编码神经网络模型的输出层输入,自所述输出层逆向生成所述自编码神经网络模型的中间隐层的隐含特征,作为所述自编码神经网络模型的中间隐层的隐含特征,其中,当所述中间隐层为奇数层时,取最中间的中间隐层对应的隐含特征作为所述自编码神经网络模型的中间隐层的隐含特征;当所述中间隐层为偶数层时,取最中间的两个中间隐层对应的隐含特征的平均值作为所述自编码神经网络模型的中间隐层的隐含特征。优选地,所述获取所述数据库表中预设的参考数据,并生成所述参考数据对应的文本词向量的步骤之前,所述方法还包括如下步骤:建立自编码神经网络模型;获取不带类别标签的训练样本数据,并生成对应的词向量;将所述词向量正向输入,训练所述自编码神经网络模型,其中,训练过程为:将所述词向量正向输入,正向训练所述自编码神经网络模型的第一隐层,在隐层为多层时,将第一隐层由原始输入转化成由隐藏单元激活值组成的向量,将该向量作为第二隐层的输入,继续训练得到第二层的参数,重复执行将前一层的输出作为下一层输入依次训练,在训练每一层参数的时候,其他各层的参数保持不变。为实现上述目的,本专利技术提供了一种数据库生成测试数据的装置,包括:获取模块,用于获取需要生成测试数据的数据库表及所述数据库表中数据的数据类型;分析模块,用于将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围;生成模块,用于在所述取值范围内,随机生成目标数据;插入模块,用于根据预设的所述测试数据的插入规则,将生成的目标数据插入到所述数据库表中。为实现上述目的,本专利技术提供了一种终端,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据库生成测试数据的程序,所述数据库生成测试数据的程序配置为实现上述的数据库生成测试数据的方法的步骤。为实现上述目的,本专利技术提供了一种存储介质,所述存储介质上存储有数据库生成测试数据的程序,所述数据库生成测试数据的程序被处理器执行时实现上述的数据库生成测试数据的方法的步骤。本专利技术通过获取需要生成测试数据的数据库表及所述数据库表中数据的数据类型,再将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的数据范围,再在所述数据范围内,随机生成目标数据,最后根据预设的所述测试数据的插入规则,将生成的目标数据插入到所述数据库表中,提高了数据库中数据插入的效率。附图说明图1是本专利技术实施例方案涉及的硬件运行环境的终端的结构示意图;图2为本专利技术数据库生成测试数据的方法第一实施例的流程示意图;图3为本专利技术数据库生成测试数据的方法第二实施例的流程示意图;图4为本专利技术数据库生成测试数据的方法第三实施例的流程示意图;图5为本专利技术数据库生成测试数据的方法第四实施例的流程示意图;图6为本专利技术数据库生成测试数据的方法第五实施例的流程示意图图7为本专利技术数据库生成测试数据的装置第一实施例的结构框图;图8为本专利技术自编码神经网络学习模型一实施例的结构示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。参照图1,图1为本专利技术实施例方案涉及的硬件运行环境的用户行为识别设备结构示意图。如图1所示,该终端可以包括:处理器1001,例如中央处理器(CentralProcessingUnit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的本文档来自技高网...

【技术保护点】
1.一种数据库生成测试数据的方法,其特征在于,所述方法包括:获取需要生成测试数据的数据库表及所述数据库表中数据的数据类型;将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围;在所述取值范围内,随机生成目标数据;根据预设的所述测试数据的插入规则,将生成的目标数据插入到所述数据库表中。

【技术特征摘要】
1.一种数据库生成测试数据的方法,其特征在于,所述方法包括:获取需要生成测试数据的数据库表及所述数据库表中数据的数据类型;将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围;在所述取值范围内,随机生成目标数据;根据预设的所述测试数据的插入规则,将生成的目标数据插入到所述数据库表中。2.如权利要求1所述的数据库生成测试数据的方法,其特征在于,所述数据类型为数值数据;相应地,所述将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围的步骤,包括:将所述数据库表中预先存储的与所述数据类型对应的区间范围,作为所述测试数据的取值范围。3.如权利要求1所述的数据库生成测试数据的方法,其特征在于,所述数据类型为语句;相应地,所述将所述数据库表中预先存储的与所述数据类型对应的数据范围,作为所述测试数据的取值范围的步骤,包括:获取所述数据库表中预先存储的与所述数据类型对应的带标签的训练样本数据,并生成对应的分类词向量;将所述分类词向量正向输入已训练的自编码神经网络模型,得到样本数据的隐含特征;计算样本数据的所述隐含特征的向量差,并作为所述测试数据的取值范围。4.如权利要求3所述的数据库生成测试数据的方法,其特征在于,所述在所述取值范围内,随机生成目标数据的步骤,包括:获取所述数据库表中预设的参考数据,并生成所述参考数据对应的文本词向量;将所述文本词向量逆向输入已训练的自编码神经网络模型,得到所述自编码神经网络模型的中间隐层的隐含特征;在所述取值范围内随机生成取值需求,并根据生成的取值需求修正所述隐含特征;将修正后的隐含特征作为所述自编码神经网络模型的中间隐层,自所述中间隐层逆向生成所述自编码神经网络模型的输入层对应的词向量;根据生成的词向量,生成对应的文本,作为目标数据。5.如权利要求4所述的数据库生成测试数据的方法,其特征在于,所述在所述取值范围内随机生成取值需求,并根据生成的取值需求修正所述隐含特征的步骤,包括:在所述取值范围内,随机生成所述隐含特征对应的调节向量;将所述隐含特征与所述调节向量的向量差,作为修正后的隐含特征。6.如权利要求4所述的数据库生成测试数据的方法,其特征在于,所述自编码神经网络模型的中间隐层为...

【专利技术属性】
技术研发人员:李思原
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

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

1