CN112579604A - 测试***的造数方法、装置、设备及存储介质 - Google Patents
测试***的造数方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112579604A CN112579604A CN202011544922.0A CN202011544922A CN112579604A CN 112579604 A CN112579604 A CN 112579604A CN 202011544922 A CN202011544922 A CN 202011544922A CN 112579604 A CN112579604 A CN 112579604A
- Authority
- CN
- China
- Prior art keywords
- data
- text file
- target
- database
- field
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 71
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000004519 manufacturing process Methods 0.000 claims abstract description 59
- 238000003780 insertion Methods 0.000 claims abstract description 53
- 230000037431 insertion Effects 0.000 claims abstract description 53
- 238000006243 chemical reaction Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims description 57
- 230000009466 transformation Effects 0.000 claims 2
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及大数据技术领域,公开了测试***的造数方法、装置、设备及存储介质,用于减少造数时长以及提高造数效率。测试***的造数方法包括:获取查询语句,并根据查询语句从数据库中获取数据字段,数据字段为存储数据对象的字段;获取转换指令,并执行转换指令根据数据字段确定目标文本文件数据,目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;获取造数指令,并根据目标文本文件数据执行造数指令,生成目标列表数据;采用预置的***函数将目标列表数据***数据库中,得到目标数据表。此外,本发明还涉及区块链技术,数据字段可存储于区块链中。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种测试***的造数方法、装置、设备及存储介质。
背景技术
随着科技的发展,人们对数据库、应用软件和***的功能要求不断升高,开发方也在不断提高数据库、应用软件和***的性能水平,因此在终端出厂前、应用软件或者***上架前,开发方需要对数据库、应用软件和***进行多次测试,可以采用人工方式也可以采用自动化测试***对数据库、应用软件和***进行测试。
目前,主要采用自动化测试***对应用软件和***进行测试,当在现有开源关系型数据库的环境下对结构化查询语言数据库进行性能测试时,需要涉及到千万量级数据,进行性能测试,此时就需要进行造数,目前主要使用jmeter工具、开源关系型数据库等工具来造数,但是现有的造数方法造数用时长且造数效率低。
发明内容
本发明提供了一种测试***的造数方法、装置、设备及存储介质,用于减少造数时长以及提高造数效率。
本发明第一方面提供了一种测试***的造数方法,包括:获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。
可选的,在本发明第一方面的第一种实现方式中,所述获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段包括:获取查询指令;根据所述查询语句执行所述查询指令,在数据库中确定对应的数据库表;从所述数据库表中提取与所述查询指令对应的数据字段,所述数据字段为存储数据对象的字段。
可选的,在本发明第一方面的第二种实现方式中,所述获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数包括:获取转换指令,并执行所述转换指令,将所述数据字段转换为初始文本文件数据,所述初始文本文件数据为文本格式的文件数据;在所述初始文本文件数据中,进行参数化配置,得到目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数。
可选的,在本发明第一方面的第三种实现方式中,所述在所述初始文本文件数据中,进行参数化配置,得到目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数包括:按照预置的关键字参数,在所述初始文本文件数据中配置关键字参数,得到第一次配置后的文本文件数据;按照预置的数据获取标准,在所述第一次配置后的文本文件数据中配置获取方式参数,得到第二次配置后的文本文件数据;按照预置的数据范围标准,在所述第二次配置后的文本文件数据中配置数据范围参数,得到第三次配置后的文本文件数据;按照预置的单位执行数量参数,在所述第三次配置后的文本文件数据中配置单位执行数量参数,得到目标文本文件数据。
可选的,在本发明第一方面的第四种实现方式中,所述采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表包括:在数据库中创建待***的数据库表,所述待***的数据库表包括数据库表名称、分隔符规则和文本表示规则;采用预置的***函数将所述目标列表数据***所述待***的数据库表中,得到目标数据表。
可选的,在本发明第一方面的第五种实现方式中,所述采用预置的***函数将所述目标列表数据***所述待***的数据库表中,得到目标数据表包括:采用预置的***函数,从所述目标列表数据中读取类文件对象,所述类文件对象至少包括字节数据读取方法和行数据读取方法;采用所述***函数,读取数据库表的缓冲空间数据;读取所述类文件对象的字节数据,当所述缓冲区空间数据大于所述类文件对象的字节数据时,采用所述***函数,基于所述分隔符规则和所述文本表示规则将所述类文件对象***所述待***的数据库表中,得到目标数据表。
可选的,在本发明第一方面的第六种实现方式中,在所述获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段之前,所述测试***的造数方法包括:获取环境测试指令,根据所述环境测试指令对数据库进行环境测试。
本发明第二方面提供了一种测试***的造数装置,包括:查询语句获取模块,用于获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;文本文件数据确定模块,用于获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;执行模块,用于获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;***模块,用于采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。
可选的,在本发明第二方面的第一种实现方式中,所述查询语句获取模块还可以具体用于:获取查询指令;根据所述查询语句执行所述查询指令,在数据库中确定对应的数据库表;从所述数据库表中提取与所述查询指令对应的数据字段,所述数据字段为存储数据对象的字段。
可选的,在本发明第二方面的第二种实现方式中,所述文本文件数据确定模块包括:转换指令执行单元,用于获取转换指令,并执行所述转换指令,将所述数据字段转换为初始文本文件数据,所述初始文本文件数据为文本格式的文件数据;配置单元,用于在所述初始文本文件数据中,进行参数化配置,得到目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数。
可选的,在本发明第二方面的第三种实现方式中,所述配置单元还可以具体用于:按照预置的关键字参数,在所述初始文本文件数据中配置关键字参数,得到第一次配置后的文本文件数据;按照预置的数据获取标准,在所述第一次配置后的文本文件数据中配置获取方式参数,得到第二次配置后的文本文件数据;按照预置的数据范围标准,在所述第二次配置后的文本文件数据中配置数据范围参数,得到第三次配置后的文本文件数据;按照预置的单位执行数量参数,在所述第三次配置后的文本文件数据中配置单位执行数量参数,得到目标文本文件数据。
可选的,在本发明第二方面的第四种实现方式中,所述***模块包括:创建单元,用于在数据库中创建待***的数据库表,所述待***的数据库表包括数据库表名称、分隔符规则和文本表示规则;***单元,用于采用预置的***函数将所述目标列表数据***所述待***的数据库表中,得到目标数据表。
可选的,在本发明第二方面的第五种实现方式中,所述***单元还可以具体用于:采用预置的***函数,从所述目标列表数据中读取类文件对象,所述类文件对象至少包括字节数据读取方法和行数据读取方法;采用所述***函数,读取数据库表的缓冲空间数据;读取所述类文件对象的字节数据,当所述缓冲区空间数据大于所述类文件对象的字节数据时,采用所述***函数,基于所述分隔符规则和所述文本表示规则将所述类文件对象***所述待***的数据库表中,得到目标数据表。
可选的,在本发明第二方面的第六种实现方式中,测试***的造数装置还包括:环境测试模块,用于获取环境测试指令,根据所述环境测试指令对数据库进行环境测试。
本发明第三方面提供了一种测试***的造数设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述测试***的造数设备执行上述的测试***的造数方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的测试***的造数方法。
本发明提供的技术方案中,获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。本发明实施例中,将数据字段转换为包括配置参数的目标文本文件数据,然后根据目标文本文件数据制造数据,生成目标列表数据,最后调用copy_from***函数将目标列表数据***数据库中,得到目标数据列表;通过利用包括配置参数的目标文本文件数据参数和copy_from***函数制造数据,减少了造数时长以及提高了造数效率。
附图说明
图1为本发明实施例中测试***的造数方法的一个实施例示意图;
图2为本发明实施例中测试***的造数方法的另一个实施例示意图;
图3为本发明实施例中测试***的造数装置的一个实施例示意图;
图4为本发明实施例中测试***的造数装置的另一个实施例示意图;
图5为本发明实施例中测试***的造数设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种测试***的造数方法、装置、设备及存储介质,用于减少造数时长以及提高造数效率。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中测试***的造数方法的一个实施例包括:
101、获取查询语句,并根据查询语句从数据库中获取数据字段,数据字段为存储数据对象的字段;
服务器获取查询语句,并在数据库中根据查询语句读取为存储数据对象的数据字段。需要强调的是,为进一步保证上述数据字段的私密和安全性,上述数据字段还可以存储于一区块链的节点中。
查询语句为结构化查询语言(Structured Query Language,SQL),通过该查询语句能够从数据库中查询得到数据字段。每个数据库都包括数据表的标识或者字段标识,一个数据库中包括一个数据表或者多个数据表,每个数据表又可以携带一个特有的字段或者多个特有的字段(即存储数据对象的字段),每个字段中又包括多个记录数据,例如“用户名称”字段,对应了“用户性别”记录数据、“用户年龄”记录数据、“用户手机号码”记录数据等。服务器采用可以执行的查询语句在数据库中根据数据库表的字段在数据库中获取数据字段。
可以理解的是,本发明的执行主体可以为测试***的造数装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
102、获取转换指令,并执行转换指令根据数据字段确定目标文本文件数据,目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;
服务器执行转换指令,将数据字段转换为至少包括获取方式参数、数据范围参数以及执行次数参数的目标文本文件数据。
例如,假设服务器提取得到的数据字段为[id,number,name、created_by、date_created],当服务器获取到转换指令时,执行该转换指令,将[id,number,name、created_by、date_created]的数据字段转换为目标文本文件数据,该目标文本文件数据如下所示:
===========attributes===============
id:9d5d110FAjiayb${order[1500001,999999999]}
number:LFAjiayb${order[1500001,999999999]}
name:FAjiayb${order[1500001,999999999]}
created_by:jiayibing
date_created:2020-09-29 11:20:01
===============================
circles:300000
===============================
其中,order为获取方式参数、[1500001,999999999]为数据范围参数以及300000为单位执行数量参数。
103、获取造数指令,并根据目标文本文件数据执行造数指令,生成目标列表数据;
服务器获取造数指令,并根据目标文本文件数据执行造数指令,此时服务器根据目标文本文件中的获取方式参数、数据范围参数以及单位执行数量参数进行造数,生成目标列表数据。
例如,假设目标文本文件为上述102的例子,服务器执行造数指令,生成目标列表数据为:[{id:9d5d110FAjiayb1,number:LFAjiayb1,name:FAjiayb1,created_by:jiayibing,date_created:2020-09-29 11:20:01},{id:9d5d110FAjiayb2,number:LFAjiayb2,name:FAjiayb2,created_by:jiayibing,date_created:2020-09-2911:20:01}……],每个数据都是独一无二的,由于单位执行数量参数为300000,则执行一次造数指令得到的目标列表数据为30万条。
104、采用预置的***函数将目标列表数据***数据库中,得到目标数据表。
服务器采用预置的***函数将目标列表数据***数据库中,得到目标数据表,其中***函数为copy_from。
在本实施例中,采用copy_from将目标列表数据***数据库中,当向数据库***10万笔数据时,采用该函数可以在15秒钟将目标列表数据***数据库中,而现有的jmeter***10万笔数据,需要5分钟,该函数缩短了数据的***时间,提高了数据***效率。
本发明实施例中,将数据字段转换为包括配置参数的目标文本文件数据,然后根据目标文本文件数据制造数据,生成目标列表数据,最后调用copy_from***函数将目标列表数据***数据库中,得到目标数据列表;通过利用包括配置参数的目标文本文件数据参数和copy_from***函数制造数据,减少了造数时长以及提高了造数效率。
请参阅图2,本发明实施例中测试***的造数方法的另一个实施例包括:
201、获取环境测试指令,根据环境测试指令对数据库进行环境测试;
服务器在获取环境测试指令之后,服务器根据该环境测试指令对数据库进行环境测试,从而为构造数据的任务营造一个稳定和可控的运行环境。服务器在进行造数之前,首先要对数据库进行环境测试,使得数据库能够在稳定和可控的环境下进行造数,从而减少环境的变动对造数工作的影响。
202、获取查询语句,并根据查询语句从数据库中获取数据字段,数据字段为存储数据对象的字段;
服务器获取查询语句,并在数据库中根据查询语句读取为存储数据对象的数据字段。需要强调的是,为进一步保证上述数据字段的私密和安全性,上述数据字段还可以存储于一区块链的节点中。
查询语句为结构化查询语言(Structured Query Language,SQL),通过该查询语句能够从数据库中查询得到数据字段。每个数据库都包括数据表的标识或者字段标识,一个数据库中包括一个数据表或者多个数据表,每个数据表又可以携带一个特有的字段或者多个特有的字段(即存储数据对象的字段),每个字段中又包括多个记录数据,例如“用户名称”字段,对应了“用户性别”记录数据、“用户年龄”记录数据、“用户手机号码”记录数据等。服务器采用可以执行的查询语句在数据库中根据数据库表的字段在数据库中获取数据字段。
具体的,服务器获取查询指令;服务器根据查询语句执行查询指令,在数据库中确定对应的数据库表;服务器从数据库表中提取与查询指令对应的数据字段,数据字段为存储数据对象的字段。
服务器首先获取查询指令,查询指令为用户通过终端发出的查询指令,查询指令可以为获取“公司i的金融数据”,服务器判断查询语句是否可以执行,如果数据库中包括与查询指令相匹配的数据表标识或者字段标识,则说明该查询语句可以执行,否则不可以执行。服务器根据可以执行的查询语句执行查询指令,例如“select*from loan_table ilimit 1”在数据库中,确定对应的数据库表为“公司i的金融数据”,然后从该数据库表中提取与“公司i的金融数据”的查询指令对应的数据字段。
203、获取转换指令,并执行转换指令根据数据字段确定目标文本文件数据,目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;
服务器执行转换指令,将数据字段转换为至少包括获取方式参数、数据范围参数以及执行次数参数的目标文本文件数据。
例如,假设服务器提取得到的数据字段为[id,number,name、created_by、date_created],当服务器获取到转换指令时,执行该转换指令,将[id,number,name、created_by、date_created]的数据字段转换为目标文本文件数据,该目标文本文件数据如下所示:
===========attributes===============
id:9d5d110FAjiayb${order[1500001,999999999]}
number:LFAjiayb${order[1500001,999999999]}
name:FAjiayb${order[1500001,999999999]}
created_by:jiayibing
date_created:2020-09-29 11:20:01
===============================
circles:300000
===============================
其中,order为获取方式参数、[1500001,999999999]为数据范围参数以及300000为单位执行数量参数。
具体的,服务器获取转换指令,并执行转换指令,将数据字段转换为初始文本文件数据,初始文本文件数据为文本格式的文件数据;服务器在初始文本文件数据中,进行参数化配置,得到目标文本文件数据,目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数。
服务器获取转换指令,然后执行转换指令,将数据字段转换为格式为文本格式的初始文本文件数据,例如将数字字段[id,number,name、created_by、date_created]转换为如下所示的初始文本文件数据:
===========attributes===============
id:9d5d110
number:LF
name:
created_by:
date_created:2020-09-29 11:20:01
然后服务器在初始文本文件数据中,进行参数化配置,得到上述步骤二中的目标文本文件数据。
服务器在初始文本文件数据中,进行参数化配置,得到目标文本文件数据,目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数包括:
按照预置的关键字参数,在初始文本文件数据中配置关键字参数,得到第一次配置后的文本文件数据;按照预置的数据获取标准,在第一次配置后的文本文件数据中配置获取方式参数,得到第二次配置后的文本文件数据;按照预置的数据范围标准,在第二次配置后的文本文件数据中配置数据范围参数,得到第三次配置后的文本文件数据;按照预置的单位执行数量参数,在第三次配置后的文本文件数据中配置单位执行数量参数,得到目标文本文件数据。
服务器首先获取预置的关键字参数,然后在初始文本文件数据中进行关键字参数的配置,得到第一次配置后的文本文件数据,其中关键字可以为名称,例如FAjiayb;服务器基于预置的数据获取标准,在第一次配置后的文本文件数据中进行获取方式参数的配置,得到第二次配置后的文本文件数据,其中获取方式参数可以为order和random,order表示获取顺序数据时的参数、random表示获取随机数据时的参数。然后在第二次配置后的文本文件数据中参考预置的数据范围标准进行数据范围参数的配置,得到第三次配置后的文本文件数据,其中数据范围参数在本实施例中设置为[1500001,999999999],在其他实施例中,该数据范围参数还可以为其他。最后在第三次配置后的文本文件数据中参考预置的单位执行数量参数进行单位执行数量参数的配置,得到目标文本文件数据,其中单位执行数量参数为单次执行数量参数,在本实施例中,该参数为300000,目标文件文本数据具体结果如上述步骤203中的例子样式。
204、获取造数指令,并根据目标文本文件数据执行造数指令,生成目标列表数据;
服务器获取造数指令,并根据目标文本文件数据执行造数指令,此时服务器根据目标文本文件中的获取方式参数、数据范围参数以及单位执行数量参数进行造数,生成目标列表数据。
例如,假设目标文本文件为上述102的例子,服务器执行造数指令,生成目标列表数据为:[{id:9d5d110FAjiayb1,number:LFAjiayb1,name:FAjiayb1,created_by:jiayibing,date_created:2020-09-29 11:20:01},{id:9d5d110FAjiayb2,number:LFAjiayb2,name:FAjiayb2,created_by:jiayibing,date_created:2020-09-2911:20:01}……],每个数据都是独一无二的,由于单位执行数量参数为300000,则执行一次造数指令得到的目标列表数据为30万条。
205、采用预置的***函数将目标列表数据***数据库中,得到目标数据表。
服务器采用预置的***函数将目标列表数据***数据库中,得到目标数据表,其中***函数为copy_from。
在本实施例中,采用copy_from将目标列表数据***数据库中,当向数据库***10万笔数据时,采用该函数可以在15秒钟将目标列表数据***数据库中,而现有的jmeter***10万笔数据,需要5分钟,该函数缩短了数据的***时间,提高了数据***效率。
具体的,服务器在数据库中创建待***的数据库表,待***的数据库表包括数据库表名称、分隔符规则和文本表示规则;服务器采用预置的***函数将目标列表数据***待***的数据库表中,得到目标数据表。
首先服务器创建用于放置目标列表数据的待***的数据库表,然后在预置的***函数将目标列表数据***该待***的数据表中,得到目标数据表。
在本实施例中,创建待***的数据库表包括创建数据库表名称、创建分隔符规则和创建文本表示规则,以上通过调用创建函数进行创建,其中,文本表示规则为将文本默认为字符串"\n"。
服务器采用预置的***函数将目标列表数据***待***的数据库表中,得到目标数据表包括:服务器采用预置的***函数,从目标列表数据中读取类文件对象,类文件对象至少包括字节数据读取方法和行数据读取方法;服务器采用***函数,读取数据库表的缓冲空间数据;服务器读取类文件对象的字节数据,当缓冲区空间数据大于类文件对象的字节数据时,采用***函数,基于分隔符规则和文本表示规则将类文件对象***待***的数据库表中,得到目标数据表。
服务器采用预置的***函数,从目标文本文件数据中读取至少包括字节数据读取方法和行数据读取方法的类文件对象,其中,字节数据读取方法用于从目标列表数据中读取数据的下一个字节。返回0到255范围内的int字节值,行数据读取方法用于从目标列表数据中读取整行数据,包括"\n"字符,如果指定了一个非负数的参数,则返回指定大小的字节数,包括"\n"字符。然后采用copy_from***函数,读取数据库表的缓存空间数据,即缓存空间大小,当该缓存空间数据大于类文件对象的字节数据时,采用copy_from***函数将类文件对象按照分隔符规则和文本表示规则***包括数据库名称的数据库表中,得到目标数据表。
本发明实施例中,将数据字段转换为包括配置参数的目标文本文件数据,然后根据目标文本文件数据制造数据,生成目标列表数据,最后调用copy_from***函数将目标列表数据***数据库中,得到目标数据列表;通过利用包括配置参数的目标文本文件数据参数和copy_from***函数制造数据,减少了造数时长以及提高了造数效率。
上面对本发明实施例中测试***的造数方法进行了描述,下面对本发明实施例中测试***的造数装置进行描述,请参阅图3,本发明实施例中测试***的造数装置一个实施例包括:
查询语句获取模块301,用于获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;
文本文件数据确定模块302,用于获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;
执行模块303,用于获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;
***模块304,用于采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。
本发明实施例中,将数据字段转换为包括配置参数的目标文本文件数据,然后根据目标文本文件数据制造数据,生成目标列表数据,最后调用copy_from***函数将目标列表数据***数据库中,得到目标数据列表;通过利用包括配置参数的目标文本文件数据参数和copy_from***函数制造数据,减少了造数时长以及提高了造数效率。
请参阅图4,本发明实施例中测试***的造数装置的另一个实施例包括:
查询语句获取模块301,用于获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;
文本文件数据确定模块302,用于获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;
执行模块303,用于获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;
***模块304,用于采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。
可选的,查询语句获取模块301还可以具体用于:
获取查询指令;
根据所述查询语句执行所述查询指令,在数据库中确定对应的数据库表;
从所述数据库表中提取与所述查询指令对应的数据字段,所述数据字段为存储数据对象的字段。
可选的,文本文件数据确定模块302包括:
转换指令执行单元3021,用于获取转换指令,并执行所述转换指令,将所述数据字段转换为初始文本文件数据,所述初始文本文件数据为文本格式的文件数据;
配置单元3022,用于在所述初始文本文件数据中,进行参数化配置,得到目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数。
可选的,配置单元3022还可以具体用于:
按照预置的关键字参数,在所述初始文本文件数据中配置关键字参数,得到第一次配置后的文本文件数据;
按照预置的数据获取标准,在所述第一次配置后的文本文件数据中配置获取方式参数,得到第二次配置后的文本文件数据;
按照预置的数据范围标准,在所述第二次配置后的文本文件数据中配置数据范围参数,得到第三次配置后的文本文件数据;
按照预置的单位执行数量参数,在所述第三次配置后的文本文件数据中配置单位执行数量参数,得到目标文本文件数据。
可选的,***模块304包括:
创建单元3041,用于在数据库中创建待***的数据库表,所述待***的数据库表包括数据库表名称、分隔符规则和文本表示规则;
***单元3042,用于采用预置的***函数将所述目标列表数据***所述待***的数据库表中,得到目标数据表。
可选的,***单元3042还可以具体用于:
采用预置的***函数,从所述目标列表数据中读取类文件对象,所述类文件对象至少包括字节数据读取方法和行数据读取方法;
采用所述***函数,读取数据库表的缓冲空间数据;
读取所述类文件对象的字节数据,当所述缓冲区空间数据大于所述类文件对象的字节数据时,采用所述***函数,基于所述分隔符规则和所述文本表示规则将所述类文件对象***所述待***的数据库表中,得到目标数据表。
可选的,测试***的造数装置还包括:
环境测试模块305,用于获取环境测试指令,根据所述环境测试指令对数据库进行环境测试。
本发明实施例中,将数据字段转换为包括配置参数的目标文本文件数据,然后根据目标文本文件数据制造数据,生成目标列表数据,最后调用copy_from***函数将目标列表数据***数据库中,得到目标数据列表;通过利用包括配置参数的目标文本文件数据参数和copy_from***函数制造数据,减少了造数时长以及提高了造数效率。
上面图3和图4从模块化功能实体的角度对本发明实施例中的测试***的造数装置进行详细描述,下面从硬件处理的角度对本发明实施例中测试***的造数设备进行详细描述。
图5是本发明实施例提供的一种测试***的造数设备的结构示意图,该测试***的造数设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对测试***的造数设备500中的一系列指令操作。更进一步地,处理器510可以设置为与存储介质530通信,在测试***的造数设备500上执行存储介质530中的一系列指令操作。
测试***的造数设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作***531,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图5示出的测试***的造数设备结构并不构成对测试***的造数设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种测试***的造数设备,所述计算机设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中的所述测试***的造数方法的步骤。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述测试***的造数方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种测试***的造数方法,其特征在于,所述测试***的造数方法包括:
获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;
获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;
获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;
采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。
2.根据权利要求1所述的测试***的造数方法,其特征在于,所述获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段包括:
获取查询指令;
根据所述查询语句执行所述查询指令,在数据库中确定对应的数据库表;
从所述数据库表中提取与所述查询指令对应的数据字段,所述数据字段为存储数据对象的字段。
3.根据权利要求1所述的测试***的造数方法,其特征在于,所述获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数包括:
获取转换指令,并执行所述转换指令,将所述数据字段转换为初始文本文件数据,所述初始文本文件数据为文本格式的文件数据;
在所述初始文本文件数据中,进行参数化配置,得到目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数。
4.根据权利要求3所述的测试***的造数方法,其特征在于,所述在所述初始文本文件数据中,进行参数化配置,得到目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数包括:
按照预置的关键字参数,在所述初始文本文件数据中配置关键字参数,得到第一次配置后的文本文件数据;
按照预置的数据获取标准,在所述第一次配置后的文本文件数据中配置获取方式参数,得到第二次配置后的文本文件数据;
按照预置的数据范围标准,在所述第二次配置后的文本文件数据中配置数据范围参数,得到第三次配置后的文本文件数据;
按照预置的单位执行数量参数,在所述第三次配置后的文本文件数据中配置单位执行数量参数,得到目标文本文件数据。
5.根据权利要求1所述的测试***的造数方法,其特征在于,所述采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表包括:
在数据库中创建待***的数据库表,所述待***的数据库表包括数据库表名称、分隔符规则和文本表示规则;
采用预置的***函数将所述目标列表数据***所述待***的数据库表中,得到目标数据表。
6.根据权利要求5所述的测试***的造数方法,其特征在于,所述采用预置的***函数将所述目标列表数据***所述待***的数据库表中,得到目标数据表包括:
采用预置的***函数,从所述目标列表数据中读取类文件对象,所述类文件对象至少包括字节数据读取方法和行数据读取方法;
采用所述***函数,读取数据库表的缓冲空间数据;
读取所述类文件对象的字节数据,当所述缓冲区空间数据大于所述类文件对象的字节数据时,采用所述***函数,基于所述分隔符规则和所述文本表示规则将所述类文件对象***所述待***的数据库表中,得到目标数据表。
7.根据权利要求1-5中任意一项所述的测试***的造数方法,其特征在于,在所述获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段之前,所述测试***的造数方法包括:
获取环境测试指令,根据所述环境测试指令对数据库进行环境测试。
8.一种测试***的造数装置,其特征在于,所述测试***的造数装置包括:
查询语句获取模块,用于获取查询语句,并根据所述查询语句从数据库中获取数据字段,所述数据字段为存储数据对象的字段;
文本文件数据确定模块,用于获取转换指令,并执行所述转换指令根据所述数据字段确定目标文本文件数据,所述目标文本文件数据至少包括获取方式参数、数据范围参数以及单位执行数量参数;
执行模块,用于获取造数指令,并根据所述目标文本文件数据执行所述造数指令,生成目标列表数据;
***模块,用于采用预置的***函数将所述目标列表数据***所述数据库中,得到目标数据表。
9.一种测试***的造数设备,其特征在于,所述测试***的造数设备包括:存储器和至少一个处理器,所述存储器中存储有指令;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述测试***的造数设备执行如权利要求1-7中任意一项所述的测试***的造数方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1-7中任一项所述测试***的造数方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011544922.0A CN112579604A (zh) | 2020-12-23 | 2020-12-23 | 测试***的造数方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011544922.0A CN112579604A (zh) | 2020-12-23 | 2020-12-23 | 测试***的造数方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112579604A true CN112579604A (zh) | 2021-03-30 |
Family
ID=75139351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011544922.0A Pending CN112579604A (zh) | 2020-12-23 | 2020-12-23 | 测试***的造数方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579604A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051178A (zh) * | 2021-04-21 | 2021-06-29 | 平安普惠企业管理有限公司 | 测试数据构造方法、装置、设备及介质 |
CN114138819A (zh) * | 2021-12-08 | 2022-03-04 | 中国建设银行股份有限公司 | 一种数据处理的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815122A (zh) * | 2018-12-15 | 2019-05-28 | 深圳壹账通智能科技有限公司 | 测试数据生成方法、装置、电子设备及存储介质 |
CN110908891A (zh) * | 2019-09-18 | 2020-03-24 | 泰康保险集团股份有限公司 | 一种测试数据生成方法、装置、电子设备及存储介质 |
CN111176976A (zh) * | 2019-08-05 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 测试数据的生成方法和装置、存储介质及电子装置 |
CN111752549A (zh) * | 2020-06-24 | 2020-10-09 | 中国银行股份有限公司 | Sql函数生成方法及装置 |
-
2020
- 2020-12-23 CN CN202011544922.0A patent/CN112579604A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815122A (zh) * | 2018-12-15 | 2019-05-28 | 深圳壹账通智能科技有限公司 | 测试数据生成方法、装置、电子设备及存储介质 |
CN111176976A (zh) * | 2019-08-05 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 测试数据的生成方法和装置、存储介质及电子装置 |
CN110908891A (zh) * | 2019-09-18 | 2020-03-24 | 泰康保险集团股份有限公司 | 一种测试数据生成方法、装置、电子设备及存储介质 |
CN111752549A (zh) * | 2020-06-24 | 2020-10-09 | 中国银行股份有限公司 | Sql函数生成方法及装置 |
Non-Patent Citations (1)
Title |
---|
HEIDI1992: "Python百万级数据通过***函数批量***postgreSQL数据库, copy_from()执行效率完胜executemany()和to_sql()方法", pages 1 - 2, Retrieved from the Internet <URL:http://blog.csdn.net/skye1208/article/details/90264431, CSDN> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051178A (zh) * | 2021-04-21 | 2021-06-29 | 平安普惠企业管理有限公司 | 测试数据构造方法、装置、设备及介质 |
CN114138819A (zh) * | 2021-12-08 | 2022-03-04 | 中国建设银行股份有限公司 | 一种数据处理的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104572122B (zh) | 一种软件应用数据的生成装置及方法 | |
CN111722839B (zh) | 一种代码生成方法、装置、电子设备及存储介质 | |
JP5298117B2 (ja) | 分散コンピューティングにおけるデータマージング | |
EP2597573B1 (en) | Test data generation | |
CN108984155B (zh) | 数据处理流程设定方法和装置 | |
CN111177788A (zh) | Hive的动态脱敏方法及动态脱敏*** | |
CN112860727B (zh) | 基于大数据查询引擎的数据查询方法、装置、设备及介质 | |
CN105550206B (zh) | 结构化查询语句的版本控制方法及装置 | |
US20050120014A1 (en) | System and method for generating SQL using templates | |
CN112579604A (zh) | 测试***的造数方法、装置、设备及存储介质 | |
CN113297251A (zh) | 多源数据检索方法、装置、设备及存储介质 | |
CN114238381A (zh) | 数据质量校验方法、设备及计算机可读存储介质 | |
CN111443901A (zh) | 一种基于Java反射的业务扩展方法及装置 | |
JP5651050B2 (ja) | データ生成装置及びデータ生成プログラム | |
CN111813744A (zh) | 文件的搜索方法、装置、设备及存储介质 | |
CN112433753A (zh) | 基于参数信息的接口文档生成方法、装置、设备和介质 | |
CN111159040A (zh) | 一种测试数据生成方法、装置、设备及存储介质 | |
CN111078668B (zh) | 数据生成方法、装置、电子设备和存储介质 | |
CN113868138A (zh) | 测试数据的获取方法、***、设备及存储介质 | |
CN112835901A (zh) | 文件存储方法及装置、计算机设备、计算机可读存储介质 | |
CN114547404B (zh) | 一种大数据平台*** | |
CN115203057B (zh) | 低代码测试自动化方法、装置、设备及存储介质 | |
CN115168399B (zh) | 基于图形化界面的数据处理方法、装置、设备及存储介质 | |
CN113836038B (zh) | 测试数据构造方法、装置、设备及存储介质 | |
CN116661758B (zh) | 一种优化日志框架配置的方法、装置、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |