CN111773728A - 数据表测试方法、装置、设备及存储介质 - Google Patents
数据表测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111773728A CN111773728A CN202010658813.5A CN202010658813A CN111773728A CN 111773728 A CN111773728 A CN 111773728A CN 202010658813 A CN202010658813 A CN 202010658813A CN 111773728 A CN111773728 A CN 111773728A
- Authority
- CN
- China
- Prior art keywords
- data
- target
- data table
- sub
- information
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 114
- 238000007689 inspection Methods 0.000 claims abstract description 109
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000001514 detection method Methods 0.000 claims description 73
- 230000006870 function Effects 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 7
- 238000010998 test method Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 9
- 238000013522 software testing Methods 0.000 abstract 1
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000004064 recycling Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000008676 import Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000010437 gem Substances 0.000 description 2
- 229910001751 gemstone Inorganic materials 0.000 description 2
- 238000000275 quality assurance Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种数据表测试方法、装置、设备及存储介质,涉及测试技术领域。该方法包括:获取待测数据表关联的检查规则,检查规则包括:至少一个子检查规则,每个子检查规则包括:一类数据对象的表头定义规则,以及一类数据对象对应的关联表信息;确定待测数据表是否具有满足表头定义规则的表头信息;若待测数据表具有满足表头定义规则的表头信息,则根据所述关联表信息,确定关联表信息所指示的数据表为:目标关联数据表;根据所述目标关联数据表,对满足表头定义规则的表头信息的目标数据对象进行检测。本申请可有效提升测试效率以及测试效果。
Description
技术领域
本发明涉及测试技术领域,具体而言,涉及一种数据表测试方法、装置、设备及存储介质。
背景技术
在日常的工作和学习中,常用表格来记录数据,在互联网行业的数据是呈指数级增长的,而以更快速度增加的是数据之间的关系。这时候若将所有的数据存放在同一张表中,会造成结构混乱,同时可能会浪费空间储存一些冗余的数据。为了更有效的利用数据库,也使数据库更加简洁明了,我们会对数据进行分表储存,分表储存后,各个数据表之间就存在了关联关系。
在应用程序的开发或维护更新过程中,实现一项应用功能可能用到多种数据表,已成为常态,而数据表之间的关联关系在后续的运用过程中鲜少会进行变动。因此,对于开发测试人员,梳理数据表之间的关联关系和各个数据表的功能就额外重要。然而,数据表的检查或测试,仅是针对数据表内容的合理性,但对于各数据表的关联关系在实现应用功能时的必要性,还无法进行自动检测。
目前,对于实现应用功能的数据表间关联关系的必要性检查,大多是由测试人员进行人为测试,浪费掉很多不必要的付出精力,测试效率较低,且测试效果也无法得到保障。
发明内容
本发明的目的在于,针对上述现有技术中的不足,提供一种数据表测试方法、装置、设备及存储介质,以提升测试效率以及测试效果。
为实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种数据表测试方法,包括:
获取待测数据表关联的检查规则,所述检查规则包括:至少一个子检查规则,其中,每个子检查规则包括:一类数据对象的表头定义规则,以及所述一类数据对象对应的关联表信息;
确定所述待测数据表是否具有满足所述表头定义规则的表头信息;
若所述待测数据表具有满足所述表头定义规则的表头信息,则根据所述关联表信息,确定所述关联表信息所指示的数据表为:目标关联数据表;
根据所述目标关联数据表,对满足所述表头定义规则的表头信息的目标数据对象进行检测。
可选的,所述关联表信息指示的数据表包括:所述一类数据对象对应的第一关联数据表;所述每个子检查规则还包括:所述一类数据对象对应的第一关联表头定义信息;所述目标关联数据表包括:第一目标关联数据表;
所述根据所述目标关联数据表,对所述目标数据对象进行检测,包括:
根据所述第一关联表头定义信息,确定所述目标数据对象在所述待测数据表中的第一关联表头信息,以及在所述第一目标关联数据表中的第二关联表头信息;
检测所述第二关联表头信息中是否存在与所述第一关联表头信息对应的数据内容;
若所述第二关联表头信息存在与所述第一关联表头信息对应的数据内容,则确定所述目标数据对象在所述第一目标关联数据表中检测通过;
若所述第二关联表头信息不存在与所述第一关联表头信息对应的数据内容,则确定所述目标数据对象在所述第一目标关联数据表中检测未通过。
可选的,若所述第一目标关联数据表中各子数据对象不存在其它的关联数据表,则所述方法还包括:
若所述目标数据对象在所述第一目标关联数据表中检测通过,则确定所述目标数据对象检测通过;
若所述目标数据对象在所述第一目标关联数据表中检测未通过,则确定所述目标数据对象未检测通过。
可选的,所述关联表信息指示的数据表还包括:所述第一关联数据表关联的第二关联数据表,所述每个子检查规则还包括:所述第一关联数据表对应的第二关联表头定义信息;
若所述目标数据对象在所述第一目标关联数据表中检测通过,且,所述第一目标关联数据表中子目标数据对象还关联有第二目标关联数据表,则所述根据所述目标数据对象的关联数据表,对所述目标数据对象进行检测,还包括:
根据所述第二关联表头定义信息,确定所述目标数据对象在所述第一目标关联数据表中的第一子关联表头信息,以及所述子目标数据对象在所述第二目标关联数据表中的第二子关联表头信息;
检测所述第二子关联表头信息中是否存在与所述第一子关联表头信息对应的数据内容;
若所述第二子关联表头信息存在与所述第一子关联表头信息对应的数据内容,则确定所述子目标数据对象在所述第二目标关联数据表中检测通过;
若所述第二子关联表头信息不存在与所述第一子关联表头信息对应的数据内容,则确定所述子目标数据对象在所述第二目标关联数据表中检测未通过。
可选的,若所述第二目标关联数据表中各子数据对象不存在其它的关联数据表,则所述方法还包括:
若所述子目标数据对象在所述第二目标关联数据表中检测通过,则确定所述子目标数据对象检测通过;
若所述子目标数据对象在所述第二目标关联数据表中检测未通过,则确定所述子目标数据对象未检测通过。
可选的,若所述子目标数据对象在所述第二目标关联数据表中检测通过,且,所述第二目标关联数据表中所述子目标数据对象的子数据对象还存在其它目标关联数据表,则所述根据所述目标数据对象的关联数据表,对所述目标数据对象进行检测,还包括:
根据所述其它目标关联数据表对应的关联表头定义信息,对所述子目标数据对象的子数据对象进行检测,直至所述目标数据对象最内层的子数据对象不存在关联数据表为止。
可选的,所述方法还包括:
若所述目标数据对象为多个,且,多个所述目标数据对象均测试通过,则确定所述待测数据表测试通过;
若所述目标数据对象为多个,但存在至少一个所述目标数据对象测试未通过,则确定所述待测数据表测试未通过。
可选的,所述子检查规则的数量为多个;所述确定所述待测数据表是否具有满足所述表头定义规则的表头信息,包括:
轮询多个所述子检查规则,并确定所述待测数据表中是否具有满足轮询到的子检查规则中表头定义信息的表头信息,直至所述轮训完多个所述子检查规则。
可选的,所述表头定义规则包括:用于指示所述一类数据对象的类型的第一表头定义信息,和/或,用于指示所述一类数据对象的功能标志信息的第二表头定义信息;
所述第一关联表头定义信息包括:用于指示所述一类数据对象的一个标识信息的第三表头定义信息;所述第二关联表头定义信息包括:用于指示所述一类数据对象的另一个标识信息的第四表头定义信息。
可选的,所述获取待测数据表关联的检查规则,包括:
获取所述待测数据表;
根据所述待测数据表的表信息,确定满足所述表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则。
可选的,所述根据所述待测数据表的表信息,确定满足所述表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则,包括:
确定所述待测数据表所对应项目组;
根据所述表信息,从所述项目组对应的检查规则集合中确定满足所述表信息的数据表的检查规则为:所述待测数据表关联的检查规则。
可选的,所述获取待测数据表关联的检查规则之前,所述方法还包括:
对至少一类数据对象所对应的子数据表中具有相同表头的子数据表进行合表操作,得到所述至少一类数据对象的配置总表;
根据所述配置总表中各子数据表的表头信息进行规则配置,得到所述至少一个子检查规则。
第二方面,本申请实施例还提供一种数据表测试装置,包括:
获取模块,用于获取待测数据表关联的检查规则,所述检查规则包括:至少一个子检查规则,其中,每个子检查规则包括:一类数据对象关联的表头定义规则,以及所述一类数据对象对应的关联表信息;
确定模块,用于确定所述待测数据表是否具有满足所述表头定义规则的表头信息;若所述待测数据表具有满足所述表头定义规则的表头信息,则根据所述关联表信息,确定所述关联表信息所指示的数据表为:目标关联数据表;
检测模块,用于根据所述目标关联数据表,对所述目标数据对象进行检测。
第三方面,本申请实施例还提供一种数据表测试设备,包括:存储器和处理器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所提供的任一数据表测试方法。
第四方面,本申请实施例还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被读取并执行时,实现上述第一方面所提供的任一数据表测试方法。
本申请的有益效果是:
本申请所提供的数据表测试方法、装置、设备及存储介质中,可获取待测数据表关联的检查规则,该检查规则包括:至少一个子检查规则,每个子检查规则包括:一类数据对象的表头定义规则,以及一类数据对象对应的关联表信息,并确定该待测数据表是否具有满足该表头定义规则的表头信息,若具有满足所述表头定义规则的表头信息,则根据该关联表信息,确定该关联表信息所指示的数据表为:目标关联数据表,继而根据该目标关联数据表,对满足该表头定义规则的表头信息的目标数据对象进行检测。该实施例提供的数据表测试方法,可通过获取待测数据表关联的检查规则中数据对象的表头定义规则,确定待测数据表中的目标数据对象,继而根据该检查规则中的关联表信息,确定目标关联数据表,并根据该目标关联数据表实现与应用功能相关的目标数据对象的关联关系的自动化必要性检查,避免了人为的数据表测试,减少不必要的精力浪费,有效提升了测试效率,且,减少了人为主观因素的影响,其测试效果也可得到有效保障。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种数据表测试方法的流程示意图;
图2为本申请实施例提供的一种数据表测试方法中获取检查规则的一流程图;
图3为本申请实施例提供的一种数据表测试方法中获取检查规则的另一流程图;
图4为本申请实施例提供的一种数据表测试方法中配置检查规则的流程图;
图5为本申请实施例提供的一种数据表测试方法中子检查规则独立检查的流程图;
图6为本申请实施例提供的一种数据表测试方法中子检查规则串联检查的流程图;
图7为本申请实施例提供的另一种数据表测试方法的流程图;
图8为本申请实施例提供的又一种数据表测试方法的流程图;
图9为本申请实施例提供的一种数据表测试装置的示意图;
图10为本申请实施例提供的一种数据表测试设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
本申请下述各实施例提供的数据表测试方法、装置、设备及存储介质,可应用于应用程序的开发或维护更新过程中,其可通过数据表测试系统实现数据表的自动化测试。该数据表测试系统可由预设编程语言实现,如用python编程语言,其可包括:用于进行服务器数据处理的后台框架,和,用于进行前端数据展示的前台框架。其中,该后台框架例如可以为基于模型模板视图(Model Template Views,MVC)框架的后台框架如django后台框架;该前台框架例如可以为基于超级文本标记语言(Hyper Text Markup Language,HTML)、层叠样式表(Cascading Style Sheets,CSS)语言、脚本语言如(JavaScript)的bootstrap、angularJS或者kityminder等页面框架。下述实施例的数据表测试方法中,数据处理相关的操作可由该后台框架实现,与页面显示相关的操作可由该前台框架实现。
本申请所涉及的数据表可以为应用程序中预设功能的数据表,该数据表中的数据对象,以及该数据表中数据对象的关联数据表中的数据对象,可构成该预设功能。其中,数据对象可指代数据表中数据内容所对应的功能对象。上述提及的应用程序可以为游戏应用程序,也可以为其他类似的应用程序,本申请不对此进行限制。
如下通过多个实例对本申请所提供的数据表测试方法进行示例说明。
图1为本申请实施例提供的一种数据表测试方法的流程示意图,该数据表测试方法可由数据表测试设备通过软件和/或硬件的方式实现。该数据表测试设备可以为具有上述数据表测试系统的测试功能的计算机设备实现,其产品形态可以为台式计算机、笔记本电脑或者其他类似的计算机设备,该数据表测试系统的测试功能可通过安装并运行有该数据表测试系统的应用程序实现。图1所示,该数据表测试方法可包括:
S101、获取待测数据表关联的检查规则,该检查规则包括:至少一个子检查规则。
其中,每个子检查规则包括:一类数据对象关联的表头定义规则,以及该表头定义规则对应的关联表信息。
在可能的应用示例中,可先获取该待测数据表,例如,可接收通过上述前台框架所展示的数据表上传页面所上传的待测数据表;也可以接收来自其他设备发送的该待测数据表,在其它的示例中,也可从预设的数据表存储位置获取该待测数据表。如上提及的上传的待测数据表可以为开发或测试人员又或者,其他人员通过该前台框架所展示的数据表上传页面所上传的数据表。
在获取到该待测数据表之后,可基于该待测数据表的信息,从预先配置的检查规则中确定该待测数据表所关联的检查规则。其中,该预先配置的检查规则例如可以为负责维护该数据表测试系统的用户如质量保证(Quality Assurance,QA)人员或是测试人员,预先通过该数据表测试系统的前台框架所展示的配置界面所配置的检查规则。该检查规则中每个子检查规则可以为根据数据表中数据内容或者数据对象的类型,配置对应的表头定义规则,并添加配置该数对象对应的关联表信息,即配置好该数据对象所关联的数据表,以达到该子检查规则能够检查到该表头定义规则所相关联的表格内容。
该待测数据表关联的检查规则中可包括:至少一个子检查规则,每个子检查规则可对应一类数据对象,其可包括:该一类数据对象关联的表头定义规则,以及该一类数据对象对应的关联表信息。如此,对于至少一条子检查规则便可实现至少一类数据对象的检查。
其中,表头定义规则可用于表示该一类数据对象在原数据表对应的表头信息。该关联表信息可用于指示该一类数据对象所在原数据表中数据内容关联的其他数据表的信息。
S102、确定该待测数据表是否具有满足该表头定义规则的表头信息。
在具体实现过程中,可分别判断该待测数据表中各表头信息,是否满足上述表头定义规则,根据判断结果,确定该待测数据表是否具有满足该表头定义规则的表头信息。
该待测数据表具有满足该表头定义规则的表头信息,便可确定该待测数表中存在待测数据对象,即满足该表头定义规则的表头信息对应的数据对象即为该目标数据对象。该目标数据对象的类型即为该表头定义规则所对应的数据对象类型。
该待测数据表不具有满足该表头定义规则的表头信息,便可确定该待测数表中不存在待测数据对象,即无需对该待测数据表进行测试,便可退出测试流程。
S103、若该待测数据表具有满足该表头定义规则的表头信息,则根据该关联表信息,确定该关联表信息所指示的数据表为:目标关联数据表。
该关联表信息可用于指示一类数据对象的关联数据表。在具有满足该表头定义规则的表头信息,即存在满足该表头定义规则的表头信息对应的目标数据对象,如此,根据该关联表信息所确定的该目标关联数据表即为该目标数据对象的关联数据表。
S104、根据该目标关联数据表,对满足该表头定义规则的表头信息的目标数据对象进行检测。
在可能的实现示例中,可通过确定目标数据对象在该待测数据表的数据信息,与该目标关联数据表中对应关联表头的数据内容是否相同,实现对该目标数据对象的测试。
本申请实施例所提供的数据表测试方法,可获取待测数据表关联的检查规则,该检查规则包括:至少一个子检查规则,每个子检查规则包括:一类数据对象的表头定义规则,以及一类数据对象对应的关联表信息,并确定该待测数据表是否具有满足该表头定义规则的表头信息,若具有满足所述表头定义规则的表头信息,则根据该关联表信息,确定该关联表信息所指示的数据表为:目标关联数据表,继而根据该目标关联数据表,对满足该表头定义规则的表头信息的目标数据对象进行检测。该实施例提供的数据表测试方法,可通过获取待测数据表关联的检查规则中数据对象的表头定义规则,确定待测数据表中的目标数据对象,继而根据该检查规则中的关联表信息,确定目标关联数据表,并根据该目标关联数据表实现与应用功能相关的目标数据对象的关联关系的自动化必要性检查,避免了人为的数据表测试,减少不必要的精力浪费,有效提升了测试效率,且,减少了人为主观因素的影响,其测试效果也可得到有效保障。
可选的,在上述基础上,本申请实施例还提供一种数据表测试方法的可能实现方式,如下通过获取检查规则为例进行解释说明。图2为本申请实施例提供的一种数据表测试方法中获取检查规则的一流程图,如图2所示,上述方法中S101中获取待测数据表关联的检查规则,可包括:
S201、获取待测数据表。
S202、根据待测数据表的表信息,确定满足该表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则。
该待测数据表的表信息可以为该待测数据表的表标识信息,如表号或者表名信息。示例地,以游戏应用中的道具表为例,该待测数据表的表信息例如可以为道具表的表名信息,如:“道具表.csv”,如此可确定该表名信息对应的检查规则为该道具表关联的检查规则。
该待测数据表的表信息也可以为该待测数据表中数据对象的类型信息。继续以游戏应用中的道具表为例,该待测数据表的表信息例如可以为道具表中数据对象的类型,如数据对象所指示的虚拟道具的类型,如此可确定该类型的虚拟道具所关联的检查规则为该道具表所关联的检查规则。该虚拟道具的类型例如可以为第一类虚拟道具的类型或第二类虚拟道具的类型。其中,第一类虚拟道具可以为与其他虚拟道具不存在嵌套关系的虚拟道具,第二类虚拟道具可以为与其他虚拟道具存在嵌套关系的虚拟道具。示例的,第一类虚拟道具例如可以为虚拟功能道具,如可交易虚拟道具、可续费虚拟道具、可升级虚拟道具、可拆解虚拟道具等。第二类虚拟道具例如可以为虚拟宝箱宝具,如随机掉落虚拟宝箱道具,或者固定掉落虚拟宝箱宝具。
该实施例中基于该待测数据表的表信息,确定该待测数据表关联的检查规则,可保证该检查规则与该待测数据表更匹配,有效保证对该待测数据表中数据对象的测试效果。
可选的,在图2所示的数据表测试方法的基础上,本申请实施例还提供一种获取检查规则的可能实现方式,如下结合附图进行解释说明。图3为本申请实施例提供的一种数据表测试方法中获取检查规则的另一流程图,如图3所示,上述方法中S202中根据待测数据表的表信息,确定满足该表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则,可包括:
S301、确定该待测数据表所对应项目组。
该数据表测试系统可适用于一个项目组的数据表测试,也可应用于多个项目组的数据表测试。若为适应于多个项目组的数据表测试,可先确定该待测数据表对应的项目组。该多个项目组中不同项目组的数据,如数据表在版本控制系统中可具有不同的存储路径。每个项目组的存储路径可以为该每个项目组的数据在预设的版本控制系统如Subversion系统中的路径,其可称为svn路径,该支持多个项目组的版本控制系统可适用于多个项目组的人员共同办公,可有效保证不同项目组的信息不会遗漏。
例如,可从该待测数据表对应的项目组的存储路径,从预设版本控制系统中,获取该待测数据表。该待测数据表对应的项目组可以预设项目组,也可以为预先通过数据表测试系统的前台框架所展示的项目组的组别设置页面所设置或选择的项目组。如:可根据通过组别设置页面输入的项目组的组别名称、项目组的申请类型以及申请理由等信息,实现项目组的组别设置。
S302、根据该表信息,从该项目组对应的检查规则集合中确定满足该表信息的数据表的检查规则为:该待测数据表关联的检查规则。
该数据表测试系统可具有数据调度服务,对于每个项目组的设备,可通过下载该数据调度服务的文件在该每个项目组的设备上实现配置,便可通过该数据调度服务获取该每个项目组所需的数据。
在确定该待测数据表对应的项目组的情况下,可根据该项目组的信息,如项目组的组别信息,确定该项目组对应的检查规则集合,继而根据该表信息,从该检查规则集合中确定满足该表信息的数据表的检查规则为:该待测数据表关联的检查规则。其中,该项目组对应的检查规则集合包括:该项目组所涉及的多种数据表的检查规则。
该实施例中,可确定待测数据表对应的项目组,根据该表信息,从该项目组对应的检查规则集合中确定满足该表信息的数据表的检查规则为:该待测数据表关联的检查规则,既可保证该检查规则与该待测数据表更匹配,也可减少获取待测数据表关联的检查规则所需的时长,提高系统对于大量数据表处理的效率,同时,还可实现多个项目组的数据表的测试,避免不同项目组的数据表测试过程中的信息泄露风险。
可选的,在上述数据表测试方法的基础上,本申请实施例还提供一种配置检查规则的可能实现方式,如下结合附图进行解释说明。图4为本申请实施例提供的一种数据表测试方法中配置检查规则的流程图,如图4所示,上述方法中S101中获取待测数据表关联的检查规则之前,该方法还可包括:
S401、对至少一类数据对象所对应的子数据表中具有相同表头的子数据表进行合表操作,得到该至少一类数据对象的配置总表。
在进行检查规则的配置之前,可先进行数据对象的分类,继而分类后的各类数据对象进行子检查规则的配置。该实施例通过数据对象的分类,实现了子检查规则的分类,可使得数据表测试系统的架构更清晰,能够更快找到相关联的子检查规则,使得检查规则不那么杂乱无章的展示,便于检查规则的维护。
继续以游戏应用中的数据对象为例进行说明,数据对象可以为虚拟道具,该检查规则可包括:第一类虚拟道具的检查规则,和第二类虚拟道具的检查规则。其中,第一类虚拟道具可以为与其他虚拟道具不存在嵌套关系的虚拟道具。第一类虚拟道具可以为与其他虚拟道具不存在嵌套关系的虚拟道具,第二类虚拟道具可以为与其他虚拟道具存在嵌套关系的虚拟道具。示例的,第一类虚拟道具例如可以为虚拟功能道具,如可交易虚拟道具、可续费虚拟道具、可升级虚拟道具、可拆解虚拟道具等。第二类虚拟道具例如可以为虚拟宝箱宝具,如随机掉落虚拟宝箱道具,或者固定掉落虚拟宝箱宝具。
为有效利用数据库,使得数据库更加简洁明了,每类数据对象在数据库中实际是以分表形式存储。若直接以分表进行数据对象的子检查规则的配置,其配置操作就很不方便,因此,可先对该一类数据对象所应有的多个子数据表中具有相同表头的子数据表进行合表操作,得到该一类数据对象的配置总表,继而基于配置总表进行该一类数据对象的子检查规则配置,便可避免相同表头的重复配置。
继续以数据对象为虚拟道具为例,可将虚拟道具的各个分表如“道具-原料.csv;道具-消耗品.csv;道具-时装.csv;道具-乘骑.csv;道具-元魂珠.csv;道具-饰品.csv;道具-防具.csv;道具-武器.csv;道具-书籍.csv;道具-任务道具.csv”等分表进行合并,得到该虚拟道具的配置总表如“道具表.csv”。
S402、根据该配置总表中各子数据表的表头信息进行规则配置,得到该至少一个子检查规则。
可能的实现方法中,可根据该配置总表中上述各子数据表或者分表对应的表头信息分别进行规则配置,得到分别对应各类数据对象的子检查规则,即得到至少一个子检查规则。
可选的,每个子检查规则中表头定义规则包括:用于指示一类数据对象的类型的第一表头定义信息,和/或,用于指示一类数据对象的功能标志信息的第二表头定义信息。
以上述配置总表如“道具表.csv”中“道具-时装.csv”对应的部分表头信息为例对第一类数据道具为虚拟功能道具为例进行说明。如下表1为一种“道具-时装.csv”对应的部分表头信息、表头信息的含义以及关联表格的对应关系表。
表1
如下结合表1所示的对应关系,对一些数据对象的子检查进行示例解释。
其中,以数据对象为可续费虚拟时装道具为例,该可续费时装道具的子检查规则例如可包括:该可续费时装道具的表头定义规则,以及该可续费时装道具的关联表信息。其中,该可续费时装道具的表头定义规则例如可以为:道具表.csv中指示虚拟道具的类型的表头信息为:11,以及指示虚拟时装道具可续费的功能标志的表头信息为1。该可续费时装道具的关联表信息例如可包括:该可续费时装道具所在数据表的表名如道具表.csv、可续费时装道具关联的过期物品回收.csv,以及在该道具表.csv中的关联标识:道具编号、该过期物品回收.csv中关联标识:回收物品编号。
以数据对象为可升级虚拟时装道具为例,该可升级时装道具的子检查规则例如可包括:该可升级时装道具的表头定义规则,以及该可升级时装道具的关联表信息。其中,该可升级时装道具的表头定义规则例如可以为:道具表.csv中指示虚拟道具的类型的表头信息为11,以及指示虚拟时装道具可升级的功能标志的表头信息为1。该可升级时装道具的关联表信息例如可包括:该可升级时装道具所在道具表.csv的表名,以及该可升级时装道具关联的时装升级数据表.csv的表名。该可升级时装道具的关联表信息例如还可包括:该道具表.csv中的关联标识:道具编号、该时装升级数据表.csv中关联标识:时装帽道具编号,以及时装衣道具编号。
以数据对象为可拆解虚拟时装道具为例,该可拆解时装道具的子检查规则例如可包括:该可拆解时装道具的表头定义规则,以及该可拆解时装道具的关联表信息。其中,该可拆解时装道具的表头定义规则例如可以为:道具表.csv中指示虚拟道具的类型的表头信息为11,以及指示虚拟时装道具可拆解的功能标志的表头信息为1。该可拆解时装道具的关联表信息例如可包括:该可拆解时装道具所在道具表.csv的表名、可拆解时装道具关联的时装拆解数据表.csv的表名,以及在该道具表.csv中的关联标识:道具编号、时装拆解数据表.csv中关联标识:拆解时装道具编号。
类似于参照上述各类型虚拟道具的子检查规则的配置,可实现对各类型的数据对象的子检查规则的配置,用以实现对待测数据表中各类型数据对象的自动化检测。
只要检查规则得到正确配置,便可实现对存在关联关系的数据表中的数据对象实现完整的检测。
在上述方法的基础上,如上涉及的关联表信息指示的数据表包括:该一类数据对象对应的第一关联数据表;该每个子检查规则还包括:该一类数据对象对应的第一关联表头定义信息;该目标关联数据表包括:该目标数据对象的第一目标关联数据表。如下结合附图对数据表测试方法继续进行说明。图5为本申请实施例提供的一种数据表测试方法中子检查规则独立检查的流程图,如图5所示,上述S104中根据该目标关联数据表,对满足该表头定义规则的表头信息的目标数据对象进行检测可包括:
S501、根据该第一关联表头定义信息,确定该目标数据对象在该待测数据表中的第一关联表头信息,以及在该第一目标关联数据表中的第二关联表头信息。
其中,第一关联表头定义信息包括:用于指示该一类数据对象的一个标识信息的表头定义信息。
该第一关联表头信息和所述第二关联表头信息分别为该目标数据对象在该待测数据表和该第一目标关联数据表中的关联信息,其各表头信息的数据内容分别为该目标数据对象在该待测数据表和该第一目标关联数据表中的标识信息。
例如,若该目标数据对象为可续费时装道具,那么该第一关联表头信息例如可以为该可续费时装道具在道具表中的道具编号的表头信息,第二关联表头信息例如可以为该可续费时装道具在过期物品回收表中回收物品编号的表头信息。
S502、检测该第二关联表头信息中是否存在与该第一关联表头信息对应的数据内容。
在可能的实现中,可通过比较该第二关联表头信息中的数据内容和该第一关联表头信息中的数据内容,确定该第二关联表头信息中是否存在与该第一关联表头信息对应的数据内容。若数据内容均不同,则确定第二关联表头信息中不存在与该第一关联表头信息对应的数据内容;若第二关联表头信息中的一个数据内容与该第一关联表头信息的数据内容相同,则确定第二关联表头信息中存在与该第一关联表头信息对应的数据内容。
S503、若该第二关联表头信息存在与该第一关联表头信息对应的数据内容,则确定该目标数据对象在该第一目标关联数据表中检测通过。
S504、若该第二关联表头信息不存在与该第一关联表头信息对应的数据内容,则确定该目标数据对象在该第一目标关联数据表中检测未通过。
该实施例提供的方法中,可通过比较该目标数据对象在该待测数据表中的第一关联表头信息,以及在该第一目标关联数据表中的第二关联表头信息中的数据内容,实现对该目标数据对象在该第一目标关联数据表中的内容检测,使得检测结果更准确,检测结果更有效。
可选的,若上述第一目标关联数据表中各子数据对象不存在其他的关联数据表,则该方法还可包括:
若该目标数据对象在该第一目标关联数据表中检测通过,则确定该目标数据对象检测通过;
若该目标数据对象在该第一目标关联数据表中检测未通过,则确定该目标数据对象未检测通过。
当目标数据对象所关联的第一目标关联数据表中各子数据对象不存在其他的关联数据表,可知,该目标数据对象仅具有一级关联数据表,因此,该目标数据对象在该第一目标关联数据表的检测结果,即为该目标数据对象的检测结果。
在其它的可能示例中,目标数据对象所关联的第一目标关联数据表中各子数据对象可能存在其他的关联数据表,该目标数据对象可能具有两级或多级的关联数据表,如下分别通过示例对可能存在两级或更多级的关联数据表的检测进行示例解释。
该关联表信息指示的数据表还包括:该第一关联数据表关联的第二关联数据表,该每个子检查规则还包括:该第一关联数据表对应的第二关联表头定义信息。图6为本申请实施例提供的一种数据表测试方法中子检查规则串联检查的流程图,如图6所示,在上述图5的基础上,若该目标数据对象在该第一目标关联数据表中检测通过,且,该第一目标关联数据表中子目标数据对象还关联有第二目标关联数据表,则上述S104中根据该目标关联数据表,对满足该表头定义规则的表头信息的目标数据对象进行检测,还可包括:
S601、根据该第二关联表头定义信息,确定该目标数据对象在该第一目标关联数据表中的第一子关联表头信息,以及该子目标数据对象在该第二目标关联数据表中的第二子关联表头信息。
该第二关联表头定义信息可包括:用于指示该一类数据对象关联的第一目标关联数据表中子数据对象的表头定义信息。
该第一子关联表头信息和所述第二子关联表头信息分别为该子目标数据对象在该第一目标关联数据表和该第二目标关联数据表中的关联信息,其各表头信息的数据内容分别为该子目标数据对象在该第一目标关联数据表和该第二目标关联数据表中的标识信息。
S602、检测该第二子关联表头信息中是否存在与该第一子关联表头信息对应的数据内容。
在S602中检测的具体实现可与上述S502类似,具体参照上述,本申请在此不再赘述。
S603、若该第二子关联表头信息存在与该第一子关联表头信息对应的数据内容,则确定该子目标数据对象在该第二目标关联数据表中检测通过。
S604、若该第二子关联表头信息不存在与该第一子关联表头信息对应的数据内容,则确定该子目标数据对象在该第二目标关联数据表中检测未通过。
该实施例提供的方法中,可通过比较该子目标数据对象在该第一目标关联数据表中的第一子关联表头信息,以及在该第二目标关联数据表中的第二子关联表头信息中的数据内容,实现对该目标数据对象的子数据对象在该第二目标关联数据表中的内容检测,实现了涉及两级关联数据表的目标数据对象的自动化检测,并且检测结果准确而有效。
可选的,若该第二目标关联数据表中各子数据对象不存在其它的关联数据表,则该方法还可包括:
若该子目标数据对象在该第二目标关联数据表中检测通过,则确定该子目标数据对象检测通过;
若该子目标数据对象在该第二目标关联数据表中检测未通过,则确定该子目标数据对象未检测通过。
当子目标数据对象所关联的第二目标关联数据表中各子数据对象不存在其他的关联数据表,可知,该子目标数据对象仅具有一级关联数据表,因此,该子目标数据对象在该第二目标关联数据表的检测结果,即为该子目标数据对象的检测结果。
可选的,若该子目标数据对象在该第二目标关联数据表中检测通过,且,该第二目标关联数据表中该子目标数据对象的子数据对象还存在其它目标关联数据表,则上述S104中根据该目标数据对象的关联数据表,对该目标数据对象进行检测,还可包括:
根据该其它目标关联数据表对应的关联表头定义信息,对该子目标数据对象的子数据对象进行检测,直至该目标数据对象最内层的子数据对象不存在关联数据表为止。
在对待测数据表中的目标数据对象进行检测过程中,可能存在多级的嵌套关联关系,需对目标数据对象的子目标数据对象,以及更内层的子数据对象进行逐级的检测,直至最内层的子数据对象不存在关联数据表为止,即直至检查到该目标数据对象中的根数据对象的位置。
在上述任一方法的可能实现方式中,上述满足表头定义规则的表头信息对应的目标数据对象可能为一个,也可能为多个。若该目标数据对象为一个,当该一个目标数据对象检测通过,即可确定该待测数据表测试通过,该一个目标数据对象检测不通过,即可确定该待测数据表测试未通过。
若目标数据对象为多个,且,多个该目标数据对象均测试通过,则确定该待测数据表测试通过;而若该目标数据对象为多个,一旦存在至少一个目标数据对象测试未通过,则确定该待测数据表测试未通过。
在其他的可能示例中,上述待测数据表关联的检查规则所包括的子检查规则的数量为多个;S102中确定该待测数据表是否具有满足该表头定义规则的表头信息,可包括:
轮询多个该子检查规则,并确定该待测数据表中是否具有满足轮询到的子检查规则中表头定义信息的表头信息,直至轮训完多个该子检查规则。
通过轮询的方式对多个子检查规则,分别确定该待测数据表中是否具有满足轮询到的对应子检查规则中表头定义信息的表头信息,继而实现基于各子检查规则对该待测数据表的检测。
对待测数据表的检测可以是由待测数据表对应版本的增量检查,数据表测试系统可根据预设的间隔时间如每天,对该间隔时间内待测数据表的版本增量,采用上述待测数据表中的检查规则中的子检查规则进行轮询检测,实现对版本增量的待测数据表的完整检测。
在上述任一数据表测试方法的基础上,还可采用预设的通知方式对上述目标数据对象的检测结果进行提示。例如,可通过表格数据图的方式或者虚拟机器人如popo机器人对检测结果进行提示。
采用预设的通知方式对上述目标数据对象的检测结果进行提示,可使得测试人员或填表人员带来很大的遍历,能更好保障数据表的测试质量。
可选的,对于测试结果中目标数据对象在待测数据表的数据内容和关联数据表中的数据内容不匹配的情况,可将不匹配的数据内容所对应的数据对象,以及其所在的数据表的信息进行人工确认。
在应用程序的开发或维护更新过程中,若想知道待测数据表的数据关系分布是否满足预设的规则,可输入该待测数据表,通过查询该待测数据表关联的检查规则,继而通过该检查规则,使得对该待测数据表和预期关联的数据表中的数据关联关系进行检查。同时,采用表格数据图的方式进行通知,可更方便明确数据表之间数据关系。
下述再通过游戏应用中待测数据表为具有虚拟功能道具的道具表为示例进行解释。图7为本申请实施例提供的另一种数据表测试方法的流程图。如图7所示,该数据表测试方法可包括:
S701、获取待测的道具表。
S702、获取该道具表关联的所有检查规则。
该所有检查规则可包括:可续费虚拟时装的第一子检查规则、可升级虚拟时装的第二子检查规则,以及可拆解虚拟时装的第三子检查规则。
S703a、判断道具表中是否存在满足可续费虚拟时装的表头定义规则的表头信息。
例如,可续费虚拟时装的表头定义规则的表头信息可以为:指示虚拟道具的类型为虚拟时装道具的表头信息为11,以及指示虚拟道具可续费的功能标志的表头信息为1。
S704a、若存在满足可续费虚拟时装的表头定义规则的表头信息,根据第一子检查规则中的关联表信息,确定该道具表关联的过期物品回收表。
S705a、确定该道具表和该过期物品回收表是否存在关联的数据内容。
若不存在满足可续费虚拟时装的表头定义规则的表头信息,则该道具表针对该可续费虚拟时装的子检查规则检测结束。
S706a、若存在关联的数据内容,则确定可续费虚拟时装的检测通过。
S707a、若不存在关联的数据内容,则确定可续费虚拟时装的检测未通过。
S703b、判断道具表中是否存在满足可升级虚拟时装的表头定义规则的表头信息。
例如,可升级虚拟时装的表头定义规则的表头信息可以为:指示虚拟道具的类型为虚拟时装道具的表头信息为11,以及指示虚拟道具可升级的功能标志的表头信息为1。
S704b、若存在满足可升级虚拟时装的表头定义规则的表头信息,根据第二子检查规则中的关联表信息,确定该道具表关联的时装升级数据表。
S705b、确定该道具表和该时装升级数据表是否存在关联的数据内容。
若不存在满足可升级虚拟时装的表头定义规则的表头信息,则该道具表针对该可升级虚拟时装的子检查规则检测结束。
S706b、若存在关联的数据内容,则确定可升级虚拟时装的检测通过。
S707b、若不存在关联的数据内容,则确定可升级虚拟时装的检测未通过。
S703c、判断道具表中是否存在满足可拆解虚拟时装的表头定义规则的表头信息。
例如,可拆解虚拟时装的表头定义规则的表头信息可以为:指示虚拟道具的类型为虚拟时装道具的表头信息为11,以及指示虚拟道具可拆解的功能标志的表头信息为1。
S704c、若存在满足可拆解虚拟时装的表头定义规则的表头信息,根据第三子检查规则中的关联表信息,确定该道具表关联的时装拆解数据表。
S705c、确定该道具表和该时装拆解数据表是否存在关联的数据内容。
若不存在满足可拆解虚拟时装的表头定义规则的表头信息,则该道具表针对该可拆解虚拟时装的子检查规则检测结束。
S706c、若存在关联的数据内容,则确定可拆解虚拟时装的检测通过。
S707c、若不存在关联的数据内容,则确定可拆解虚拟时装的检测未通过。
在该示例中,只有当道具表中可续费虚拟时装、可升级虚拟时装以及可拆解虚拟时装均检测通过,才可确定该道具表检测通过。
下述再通过游戏应用中待测数据表为具有虚拟宝箱道具的道具表的可能示例进行解释。下文先对虚拟宝箱道具以及具有宝箱道具的道具表所关联的检查规则的配置进行解释。
虚拟宝箱道具例如可以为随机掉落宝箱道具和固定掉落宝箱道具。顾名思义随机掉落即为按照事件概率和物品权重随机开出虚拟道具的虚拟宝箱道具,而固定掉落即为必定掉落一定虚拟道具的虚拟宝箱道具。随机掉落宝箱道具的子类型可以为44,固定掉落宝箱道具的子类型为43。
假定一个随机掉落宝箱道具A可以开出一个固定掉落的时装宝箱道具B,以及一个随机掉落的随机宝箱道具C,其中,固定掉落宝箱道具B可包含一个虚拟时装道具b。随机掉落宝箱道具A可具有两张数据表进行配置,分别是宝箱数据表和掉落事件表,分别为下述表2和表3。宝箱数据表用来配宝箱掉落事件的权重,掉落事件表用来配掉落事件当中的虚拟道具出现的机率,道具表与宝箱数据表以道具编号关联,宝箱数据表与掉落事件以事件编号关联。
表2
宝箱编号 | 事件1编号 | 事件1几率 | 事件2编号 | 事件2几率 |
A | 10000 | 1 | 10001 | 1 |
表3
事件编号 | 事件描述 | 道具编号 | 道具个数 |
1 | 时装宝箱道具B | 1001 | 1 |
2 | 随机宝箱道具C | 2001 | 1 |
以数据对象为随机掉落宝箱道具A为例,该随机掉落宝箱道具A的子检查规则例如可包括:该随机掉落宝箱道具的表头定义规则,以及该随机掉落宝箱道具的关联表信息。其中,该随机掉落宝箱道具的表头定义规则例如可以为:道具表.csv中指示虚拟宝箱道具的类型的表头信息为:4,以及指示虚拟宝箱道具的子类型的表头信息为44。该随机掉落宝箱道具的关联表信息例如可包括:该随机掉落宝箱道具所在道具表.csv的表名、随机掉落宝箱道具关联的终结技-宝箱物品导表.csv的表名,以及在该道具表.csv中的关联标识:道具编号、该终结技-宝箱物品导表.csv中关联标识:宝箱编号。
该随机掉落宝箱道具的关联表信息还可包括:该终结技-宝箱物品导表.csv中的关联标识:事件编号、该终结技-宝箱物品导表.csv中掉落事件关联的掉落事件表.csv的表名、掉落事件表.csv中的关联标识:事件编号。
该随机掉落宝箱道具的关联表信息还可包括:该掉落事件表.csv中的关联标识:道具编号、该掉落事件表.csv中掉落道具关联的道具表.csv的表名、道具表.csv中的关联标识:道具编号。
而对于固定掉落宝箱道具B只需要填写一张数据表即可,分级奖励宝箱导入表,决定固定掉落宝箱道具B中开出的虚拟道具的数量,具体可如下述表4所示。
表4
以数据对象为固定掉落宝箱道具B为例,该固定掉落宝箱道具B的子检查规则例如可包括:该固定掉落宝箱道具的表头定义规则,以及该固定掉落宝箱道具的关联表信息。其中,该固定掉落宝箱道具的表头定义规则例如可以为:道具表.csv中指示虚拟宝箱道具的类型的表头信息为:4,以及指示虚拟宝箱道具的子类型的表头信息为43。该固定掉落宝箱道具的关联表信息例如可包括:该固定掉落宝箱道具所在道具表.csv的表名、该固定掉落宝箱道具关联的分级奖励-宝箱导入表.csv的表名,以及在该道具表.csv中的关联标识:道具编号、该分级奖励-宝箱导入表.csv中关联标识:宝箱编号。
该固定掉落宝箱道具的关联表信息还可包括:该分级奖励-宝箱导入表.csv中的关联标识:物品编号、该掉落事件表.csv中掉落道具关联的道具表.csv的表名、道具表.csv中的关联标识:道具编号。
下述再通过游戏应用中待测数据表为具有虚拟宝箱道具的道具表为示例进行解释。图8为本申请实施例提供的又一种数据表测试方法的流程图。如图8所示,该数据表测试方法可包括:
S801、获取待测的道具表。
S802、获取该道具表关联的所有检查规则。
该所有检查规则可包括:随机掉落宝箱道具的第四子检查规则,固定掉落宝箱道具的第五子检查规则、可续费虚拟时装的第六子检查规则。
S803、判断道具表中是否存在满足随机掉落宝箱道具的表头定义规则的表头信息。
例如,随机掉落宝箱道具的表头定义规则的表头信息可以为:指示虚拟道具的类型为虚拟宝箱道具的表头信息为4,以及指示虚拟宝箱道具的子类型为随机虚拟宝箱的表头信息为44。
S804、若存在满足随机掉落宝箱道具的表头定义规则的表头信息,根据第四子检查规则的关联表信息,确定该道具表关联的终结技-宝箱物品导表和掉落事件表。
S805、确定该道具表、该终结技-宝箱物品导表和掉落事件表是否存在关联的数据内容。
若不存在满足随机掉落宝箱道具的表头定义规则的表头信息,则该道具表针对随机掉落宝箱道具的子检查规则检测结束。
S806、若该道具表和掉落事件表存在关联的数据内容,且该道具表和该终结技-宝箱物品导表中存在固定宝箱道具的数据内容,则根据第五子检查规则中的关联表信息,确定道具表关联的分级奖励-宝箱导入表。
S807、确定该道具表和分级奖励-宝箱导入表是否存在关联的数据内容。
S808、若该道具表和该分级奖励-宝箱导入表存在关联的数据内容,且分级奖励-宝箱导入表中存在可续费虚拟时装的数据内容,则确定道具表中是否存在可续费虚拟时装的数据内容。
S809、若存在可续费虚拟时装的数据内容,根据第六子检查规则中的关联表信息,确定道具表关联的过期物品回收表。
S810、确定该道具表和该过期物品回收表是否存在关联的数据内容。
S811、若道具表和过期物品回收表存在关联的数据内容,则道具表中固定宝箱道具中可续费虚拟时装的检测通过。
若该道具表和掉落事件表存在关联的数据内容,且该道具表和该终结技-宝箱物品导表中存在随机宝箱道具的数据内容,则继续执行上述S803-S811,直至道具表中虚拟宝箱道具的最内层道具的检测通过。
下述对用以执行的本申请所提供的数据表测试方法的装置、设备及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
图9为本申请实施例提供的一种数据表测试装置的示意图,如图9所示,该数据表测试装置900可包括:
获取模块901,用于获取待测数据表关联的检查规则,所述检查规则包括:至少一个子检查规则,其中,每个子检查规则包括:一类数据对象的表头定义规则,以及一类数据对象对应的关联表信息;
确定模块902,用于确定待测数据表是否具有满足表头定义规则的表头信息;若待测数据表具有满足表头定义规则的表头信息,则根据关联表信息,确定关联表信息所指示的数据表为:目标关联数据表;
检测模块903,用于根据目标关联数据表,对目标数据对象进行检测。
可选的,关联表信息指示的数据表包括:该一类数据对象对应的第一关联数据表;该每个子检查规则还包括:该一类数据对象对应的第一关联表头定义信息;该目标关联数据表包括:第一目标关联数据表;
检测模块903,具体用于根据所述第一关联表头定义信息,确定所述目标数据对象在所述待测数据表中的第一关联表头信息,以及在所述第一目标关联数据表中的第二关联表头信息;检测所述第二关联表头信息中是否存在与所述第一关联表头信息对应的数据内容;若所述第二关联表头信息存在与所述第一关联表头信息对应的数据内容,则确定所述目标数据对象在所述第一目标关联数据表中检测通过;若所述第二关联表头信息不存在与所述第一关联表头信息对应的数据内容,则确定所述目标数据对象在所述第一目标关联数据表中检测未通过。
可选的,若所述第一目标关联数据表中各子数据对象不存在其它的关联数据表,则检测模块903,还用于若所述目标数据对象在所述第一目标关联数据表中检测通过,则确定所述目标数据对象检测通过;若所述目标数据对象在所述第一目标关联数据表中检测未通过,则确定所述目标数据对象未检测通过。
可选的,所述关联表信息指示的数据表还包括:所述第一关联数据表关联的第二关联数据表,所述每个子检查规则还包括:所述第一关联数据表对应的第二关联表头定义信息;
若所述目标数据对象在所述第一目标关联数据表中检测通过,且,所述第一目标关联数据表中子目标数据对象还关联有第二目标关联数据表,则检测模块903,还用于根据所述第二关联表头定义信息,确定所述目标数据对象在所述第一目标关联数据表中的第一子关联表头信息,以及所述子目标数据对象在所述第二目标关联数据表中的第二子关联表头信息;检测所述第二子关联表头信息中是否存在与所述第一子关联表头信息对应的数据内容;若所述第二子关联表头信息存在与所述第一子关联表头信息对应的数据内容,则确定所述子目标数据对象在所述第二目标关联数据表中检测通过;若所述第二子关联表头信息不存在与所述第一子关联表头信息对应的数据内容,则确定所述子目标数据对象在所述第二目标关联数据表中检测未通过。
可选的,若所述第二目标关联数据表中各子数据对象不存在其它的关联数据表,则检测模块903,还用于若所述子目标数据对象在所述第二目标关联数据表中检测通过,则确定所述子目标数据对象检测通过;若所述子目标数据对象在所述第二目标关联数据表中检测未通过,则确定所述子目标数据对象未检测通过。
可选的,若所述子目标数据对象在所述第二目标关联数据表中检测通过,且,所述第二目标关联数据表中所述子目标数据对象的子数据对象还存在其它目标关联数据表,则检测模块903,还用于根据所述其它目标关联数据表对应的关联表头定义信息,对所述子目标数据对象的子数据对象进行检测,直至所述目标数据对象最内层的子数据对象不存在关联数据表为止。
可选的,检测模块903,还用于若所述目标数据对象为多个,且,多个所述目标数据对象均测试通过,则确定所述待测数据表测试通过;若所述目标数据对象为多个,但存在至少一个所述目标数据对象测试未通过,则确定所述待测数据表测试未通过。
可选的,所述子检查规则的数量为多个;确定模块902,具体用于轮询多个所述子检查规则,并确定所述待测数据表中是否具有满足轮询到的子检查规则中表头定义信息的表头信息,直至所述轮训完多个所述子检查规则。
可选的,所述表头定义规则包括:用于指示所述一类数据对象的类型的第一表头定义信息,和/或,用于指示所述一类数据对象的功能标志信息的第二表头定义信息;
所述第一关联表头定义信息包括:用于指示所述一类数据对象的一个标识信息的第三表头定义信息;所述第二关联表头定义信息包括:用于指示所述一类数据对象的另一个标识信息的第四表头定义信息。
可选的,获取模块901,具体用于获取所述待测数据表;根据所述待测数据表的表信息,确定满足所述表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则。
可选的,获取模块901,具体用于确定所述待测数据表所对应项目组;根据所述表信息,从所述项目组对应的检查规则集合中确定满足所述表信息的数据表的检查规则为:所述待测数据表关联的检查规则。
可选的,数据表测试装置900还包括:
配置模块,用于对至少一类数据对象所对应的子数据表中具有相同表头的子数据表进行合表操作,得到所述至少一类数据对象的配置总表;根据所述配置总表中各子数据表的表头信息进行规则配置,得到所述至少一个子检查规则。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图10为本申请实施例提供的一种数据表测试设备的示意图,该数据表测试设备可以集成于计算机设备或者计算机设备的芯片。
该数据表测试设备1000包括:存储器1001、处理器1002。存储器1001和处理器1002通过总线连接。
存储器1001用于存储程序,处理器1002调用存储器1001存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本发明还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (15)
1.一种数据表测试方法,其特征在于,所述方法包括:
获取待测数据表关联的检查规则,所述检查规则包括:至少一个子检查规则,其中,每个子检查规则包括:一类数据对象的表头定义规则,以及所述一类数据对象对应的关联表信息;
确定所述待测数据表是否具有满足所述表头定义规则的表头信息;
若所述待测数据表具有满足所述表头定义规则的表头信息,则根据所述关联表信息,确定所述关联表信息所指示的数据表为:目标关联数据表;
根据所述目标关联数据表,对满足所述表头定义规则的表头信息的目标数据对象进行检测。
2.根据权利要求1所述的方法,其特征在于,所述关联表信息指示的数据表包括:所述一类数据对象对应的第一关联数据表;所述每个子检查规则还包括:所述一类数据对象对应的第一关联表头定义信息;所述目标关联数据表包括:第一目标关联数据表;
所述根据所述目标关联数据表,对所述目标数据对象进行检测,包括:
根据所述第一关联表头定义信息,确定所述目标数据对象在所述待测数据表中的第一关联表头信息,以及在所述第一目标关联数据表中的第二关联表头信息;
检测所述第二关联表头信息中是否存在与所述第一关联表头信息对应的数据内容;
若所述第二关联表头信息存在与所述第一关联表头信息对应的数据内容,则确定所述目标数据对象在所述第一目标关联数据表中检测通过;
若所述第二关联表头信息不存在与所述第一关联表头信息对应的数据内容,则确定所述目标数据对象在所述第一目标关联数据表中检测未通过。
3.根据权利要求2所述的方法,其特征在于,若所述第一目标关联数据表中各子数据对象不存在其它的关联数据表,则所述方法还包括:
若所述目标数据对象在所述第一目标关联数据表中检测通过,则确定所述目标数据对象检测通过;
若所述目标数据对象在所述第一目标关联数据表中检测未通过,则确定所述目标数据对象未检测通过。
4.根据权利要求2所述的方法,其特征在于,所述关联表信息指示的数据表还包括:所述第一关联数据表关联的第二关联数据表,所述每个子检查规则还包括:所述第一关联数据表对应的第二关联表头定义信息;
若所述目标数据对象在所述第一目标关联数据表中检测通过,且,所述第一目标关联数据表中子目标数据对象还关联有第二目标关联数据表,则所述根据所述目标数据对象的关联数据表,对所述目标数据对象进行检测,还包括:
根据所述第二关联表头定义信息,确定所述目标数据对象在所述第一目标关联数据表中的第一子关联表头信息,以及所述子目标数据对象在所述第二目标关联数据表中的第二子关联表头信息;
检测所述第二子关联表头信息中是否存在与所述第一子关联表头信息对应的数据内容;
若所述第二子关联表头信息存在与所述第一子关联表头信息对应的数据内容,则确定所述子目标数据对象在所述第二目标关联数据表中检测通过;
若所述第二子关联表头信息不存在与所述第一子关联表头信息对应的数据内容,则确定所述子目标数据对象在所述第二目标关联数据表中检测未通过。
5.根据权利要求4所述的方法,其特征在于,若所述第二目标关联数据表中各子数据对象不存在其它的关联数据表,则所述方法还包括:
若所述子目标数据对象在所述第二目标关联数据表中检测通过,则确定所述子目标数据对象检测通过;
若所述子目标数据对象在所述第二目标关联数据表中检测未通过,则确定所述子目标数据对象未检测通过。
6.根据权利要求4所述的方法,其特征在于,若所述子目标数据对象在所述第二目标关联数据表中检测通过,且,所述第二目标关联数据表中所述子目标数据对象的子数据对象还存在其它目标关联数据表,则所述根据所述目标数据对象的关联数据表,对所述目标数据对象进行检测,还包括:
根据所述其它目标关联数据表对应的关联表头定义信息,对所述子目标数据对象的子数据对象进行检测,直至所述目标数据对象最内层的子数据对象不存在关联数据表为止。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述目标数据对象为多个,且,多个所述目标数据对象均测试通过,则确定所述待测数据表测试通过;
若所述目标数据对象为多个,但存在至少一个所述目标数据对象测试未通过,则确定所述待测数据表测试未通过。
8.根据权利要求1所述的方法,其特征在于,所述子检查规则的数量为多个;所述确定所述待测数据表是否具有满足所述表头定义规则的表头信息,包括:
轮询多个所述子检查规则,并确定所述待测数据表中是否具有满足轮询到的子检查规则中表头定义信息的表头信息,直至所述轮询完多个所述子检查规则。
9.根据权利要求4所述的方法,其特征在于,所述表头定义规则包括:用于指示所述一类数据对象的类型的第一表头定义信息,和/或,用于指示所述一类数据对象的功能标志信息的第二表头定义信息;
所述第一关联表头定义信息包括:用于指示所述一类数据对象的一个标识信息的第三表头定义信息;所述第二关联表头定义信息包括:用于指示所述一类数据对象的另一个标识信息的第四表头定义信息。
10.根据权利要求1所述的方法,其特征在于,所述获取待测数据表关联的检查规则,包括:
获取所述待测数据表;
根据所述待测数据表的表信息,确定满足所述表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则。
11.根据权利要求10所述的方法,其特征在于,所述根据所述待测数据表的表信息,确定满足所述表信息的数据表对应的检查规则为:所述待测数据表关联的检查规则,包括:
确定所述待测数据表所对应项目组;
根据所述表信息,从所述项目组对应的检查规则集合中确定满足所述表信息的数据表的检查规则为:所述待测数据表关联的检查规则。
12.根据权利要求1-11中任一所述的方法,其特征在于,所述获取待测数据表关联的检查规则之前,所述方法还包括:
对至少一类数据对象所对应的子数据表中具有相同表头的子数据表进行合表操作,得到所述至少一类数据对象的配置总表;
根据所述配置总表中各子数据表的表头信息进行规则配置,得到所述至少一个子检查规则。
13.一种数据表测试装置,其特征在于,包括:
获取模块,用于获取待测数据表关联的检查规则,所述检查规则包括:至少一个子检查规则,其中,每个子检查规则包括:一类数据对象关联的表头定义规则,以及所述一类数据对象对应的关联表信息;
确定模块,用于确定所述待测数据表是否具有满足所述表头定义规则的表头信息;若所述待测数据表具有满足所述表头定义规则的表头信息,则根据所述关联表信息,确定所述关联表信息所指示的数据表为:目标关联数据表;
检测模块,用于根据所述目标关联数据表,对所述目标数据对象进行检测。
14.一种数据表测试设备,其特征在于,包括:存储器和处理器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1-12任一项所述的数据表测试方法。
15.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被读取并执行时,实现上述权利要求1-12任一项所述的数据表测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010658813.5A CN111773728B (zh) | 2020-07-09 | 2020-07-09 | 数据表测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010658813.5A CN111773728B (zh) | 2020-07-09 | 2020-07-09 | 数据表测试方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111773728A true CN111773728A (zh) | 2020-10-16 |
CN111773728B CN111773728B (zh) | 2024-06-21 |
Family
ID=72759525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010658813.5A Active CN111773728B (zh) | 2020-07-09 | 2020-07-09 | 数据表测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111773728B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112597747A (zh) * | 2021-01-05 | 2021-04-02 | 网易(杭州)网络有限公司 | 数据表的检查方法及装置、电子设备、存储介质 |
CN113138933A (zh) * | 2021-05-13 | 2021-07-20 | 网易(杭州)网络有限公司 | 数据表的测试方法、电子设备及存储介质 |
CN114880049A (zh) * | 2022-03-09 | 2022-08-09 | 深圳萨摩耶数字科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107741901A (zh) * | 2016-09-28 | 2018-02-27 | 腾讯科技(深圳)有限公司 | 一种关联数据库语句的测试方法和装置 |
CN108197114A (zh) * | 2018-01-19 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 表格数据的检测方法、装置、存储介质及电子装置 |
CN109086198A (zh) * | 2018-05-29 | 2018-12-25 | 北京五八信息技术有限公司 | 数据库的测试方法、装置及存储介质 |
CN109543160A (zh) * | 2018-11-23 | 2019-03-29 | 网易(杭州)网络有限公司 | 数值表的检查方法、检查装置、存储介质与处理器 |
CN110413522A (zh) * | 2019-07-25 | 2019-11-05 | 江苏满运软件科技有限公司 | 一种测试数据库的确定方法、装置、存储介质及电子设备 |
CN111177176A (zh) * | 2019-11-18 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 数据检测方法、装置及存储介质 |
CN111290948A (zh) * | 2020-01-19 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 测试数据获取方法、装置、计算机设备及可读存储介质 |
WO2020119434A1 (zh) * | 2018-12-15 | 2020-06-18 | 深圳壹账通智能科技有限公司 | 接口数据处理方法、自动化测试方法、装置、设备和介质 |
CN111309596A (zh) * | 2020-01-19 | 2020-06-19 | 中国平安人寿保险股份有限公司 | 数据库测试方法、装置、终端设备及存储介质 |
KR102125463B1 (ko) * | 2019-08-12 | 2020-06-23 | 지니언스(주) | 단말의 식별 및 분류를 위한 데이터 제공 장치 및 방법 |
CN111324593A (zh) * | 2020-02-17 | 2020-06-23 | 广州虎牙科技有限公司 | 数据表检测方法、装置、电子设备和计算机可读存储介质 |
-
2020
- 2020-07-09 CN CN202010658813.5A patent/CN111773728B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107741901A (zh) * | 2016-09-28 | 2018-02-27 | 腾讯科技(深圳)有限公司 | 一种关联数据库语句的测试方法和装置 |
CN108197114A (zh) * | 2018-01-19 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 表格数据的检测方法、装置、存储介质及电子装置 |
CN109086198A (zh) * | 2018-05-29 | 2018-12-25 | 北京五八信息技术有限公司 | 数据库的测试方法、装置及存储介质 |
CN109543160A (zh) * | 2018-11-23 | 2019-03-29 | 网易(杭州)网络有限公司 | 数值表的检查方法、检查装置、存储介质与处理器 |
WO2020119434A1 (zh) * | 2018-12-15 | 2020-06-18 | 深圳壹账通智能科技有限公司 | 接口数据处理方法、自动化测试方法、装置、设备和介质 |
CN110413522A (zh) * | 2019-07-25 | 2019-11-05 | 江苏满运软件科技有限公司 | 一种测试数据库的确定方法、装置、存储介质及电子设备 |
KR102125463B1 (ko) * | 2019-08-12 | 2020-06-23 | 지니언스(주) | 단말의 식별 및 분류를 위한 데이터 제공 장치 및 방법 |
CN111177176A (zh) * | 2019-11-18 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 数据检测方法、装置及存储介质 |
CN111290948A (zh) * | 2020-01-19 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 测试数据获取方法、装置、计算机设备及可读存储介质 |
CN111309596A (zh) * | 2020-01-19 | 2020-06-19 | 中国平安人寿保险股份有限公司 | 数据库测试方法、装置、终端设备及存储介质 |
CN111324593A (zh) * | 2020-02-17 | 2020-06-23 | 广州虎牙科技有限公司 | 数据表检测方法、装置、电子设备和计算机可读存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112597747A (zh) * | 2021-01-05 | 2021-04-02 | 网易(杭州)网络有限公司 | 数据表的检查方法及装置、电子设备、存储介质 |
CN113138933A (zh) * | 2021-05-13 | 2021-07-20 | 网易(杭州)网络有限公司 | 数据表的测试方法、电子设备及存储介质 |
CN114880049A (zh) * | 2022-03-09 | 2022-08-09 | 深圳萨摩耶数字科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111773728B (zh) | 2024-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yan et al. | Automating change-level self-admitted technical debt determination | |
CN111773728A (zh) | 数据表测试方法、装置、设备及存储介质 | |
Munir et al. | Considering rigor and relevance when evaluating test driven development: A systematic review | |
US8799869B2 (en) | System for ensuring comprehensiveness of requirements testing of software applications | |
US9208451B2 (en) | Automatic identification of information useful for generation-based functional verification | |
Petkovic et al. | Setap: Software engineering teamwork assessment and prediction using machine learning | |
US20170372407A1 (en) | Product information inconsistency detection | |
CN109840192B (zh) | 自动化测试的方法和装置 | |
CN107491536A (zh) | 一种试题校验方法、试题校验装置及电子设备 | |
Santos et al. | Metrics focused on usability ISO 9126 based | |
CN114168565B (zh) | 业务规则模型的回溯测试方法、装置、系统及决策引擎 | |
CN111309586A (zh) | 一种命令测试方法、装置及其存储介质 | |
CN108345979B (zh) | 一种业务测试方法及装置 | |
CN108399545B (zh) | 电子商务平台质量检测方法和装置 | |
Krismayer et al. | A constraint mining approach to support monitoring cyber-physical systems | |
CN113342692A (zh) | 测试用例自动生成方法、装置、电子设备及存储介质 | |
CN112256575A (zh) | 一种代码质量管理方法、系统及相关设备 | |
CN111859862A (zh) | 文本的数据标注方法和装置、存储介质及电子装置 | |
Soomlek et al. | Automatic human-like detection of code smells | |
Duarte et al. | PSP PAIR: automated personal software process performance analysis and improvement recommendation | |
JP6310865B2 (ja) | ソースコード評価システム及び方法 | |
CN110716778A (zh) | 应用兼容性测试方法、装置及系统 | |
CN112748950B (zh) | 一种软件代码审查方法及装置 | |
CN114840668A (zh) | 网络文本审核方法、电子设备及存储介质 | |
CN114637636A (zh) | 基于人工智能的ui界面校验方法、装置、设备及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |