CN110750440A - 数据测试方法及终端设备 - Google Patents
数据测试方法及终端设备 Download PDFInfo
- Publication number
- CN110750440A CN110750440A CN201910840241.XA CN201910840241A CN110750440A CN 110750440 A CN110750440 A CN 110750440A CN 201910840241 A CN201910840241 A CN 201910840241A CN 110750440 A CN110750440 A CN 110750440A
- Authority
- CN
- China
- Prior art keywords
- data
- tested
- test
- reading
- testing
- 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
Images
Classifications
-
- 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
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- 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
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (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是本发明实施例四提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
参见图1,图1是本发明实施例一提供的数据测试方法的流程图。本实施例中数据测试方法的执行主体为终端。终端包括但不限于智能手机、平板电脑、可穿戴设备等移动终端,还可以是台式电脑等。如图所示的数据测试方法可以包括以下步骤:
S101:获取测试指令;所述测试指令包括待测对象的对象标识和测试方式。
随着软件开发过程的发展,应用软件产品各***的架构日益复杂,***不断向着分布式、业务中心化和高可用性的方向发展。在分层的软件体系中,由于各接口模块是相互独立开发的,所提供的接口功能正确与否以及是否符合预期通常在***集成的时候才能明确。同时,由于***的不断复杂,本实施例在对各种应用***或者软件进行测试时,可以针对不同类型或者存储位置的数据确定该数据的对应的封装方法,进而对数据直接进行读取、判断以及处理。
在对待测对象进行处理之前,先获取测试指令。本实施例中的测试指令可以包括待测对象的对象标识和测试方式,其中待测对象的对象标识可以包括待测对象的名称、编号等,待测对象的测试方式可以包括白盒测试、黑盒测试等,此处不做限定。
示例性的,获取到的测试指令是,测试一个表格处理软件Excel文件中的第一个标签Sheet页中的数据的正确性,此时要读取Excel文件中的第一个Sheet页中的第一行第一列的数据,并把数据转换成密文后输出。这个例子中,实际需要多个步骤,在代码层面上也需要调用多个方法才能完成,现在把这些方法步骤封装在一个方法中,然后用户只需要把参数:文件路径、Sheet页下标、行列号、加密方式等这些参数作为入参传给数据处理设备,同时发送给数据处理设备的还可以包括数据处理请求,用于表示读取Excel文件中的第一个Sheet页中的第一行第一列的数据的信息。
S102:在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括根据不同的数据类型和存储位置封装的数据读取不同类型的数据的封装方法。
本实施例中预设有方法存储库,其中存储了各种不同类型的数据对应的数据封装方法。具体的,由于在对数据进行读取、测试或者其他处理的时候,需要先确定数据的存储位置,再将数据读取或者调用。
但是,考虑到在实际应用中,应用***或者应用软件在处理数据时往往需要面对很多类型的数据,这些数据由于不同的数据类型,其读取数据的方式也不同。例如,在读取图像数据时是通过按照图像的像素点读取每个像素值的大小,在读取表格数据时,可以按照行顺序或者列顺序读取表格中的数据。进一步的,除了数据类型不同,若数据存储的数据库不同,依然还需要根据数据库的数据读取方式来获取目标数据。
综上,根据数据类型和存储位置来对数据读取方式进行封装,在进行封装时,先确定各个数据标识的数据所对应的数据类型和存储位置,再确定各个数据的读取方式,再对处理流程中的数据读取、数据判断以及数据处理过程进行封装,得到封装方法,并根据数据标识将封装方法存储至方法存储库中。
在获取到待测对象的对象标识和测试方式之后,在方法存储库中查找与对象标识对应的目标封装方法,以通过目标封装方法从预设的数据存储库中读取待测对象的待测数据。避免通过数据标识来确定存储数据的数据库位置,再通过数据传输接口来获取数据的麻烦,提高数据读取效率。
需要说明的是,本实施例中的封装方法是基于数据的数据类型和存储位置来对数据进行处理,而测试指令中包括的是待测对象的对象标识和测试方式,因此在根据对象标识确定目标封装方法时,先在预设的标识库中确定该对象标识对应的数据类型和存储位置,再在方法存储库中确定该数据类型和存储位置对应的目标封装方法
S103:根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
本实施例中预设有数据存储库,其中存储了各种类型的数据,这些数据可以是图像、表格或者文档文本等,同时这些数据的数据读取方式和读取这些数据所需通过的接口各不相同。
在确定了目标封装方法之后,根据目标封装方法中的读取方法从数据存储库中读取待测数据,根据目标封装方法中的判断方法判断待测数据的属性是否符合预设的判断标准,并根据目标封装方法中的处理方法对不符合判断标准的待测数据进行对应的处理。在对待测数据进行处理之后,根据测试指令中待测数据的测试方式测试待测试数据。
上述方案,通过获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。通过预先根据不同的数据类型和存储位置封装数据读取、判断以及处理方法得到封装方法,并将数据封装方法存储在方法存储库中,再确定与对象标识相符的目标封装方法,避免了同时通过各不同接口或者不同的数据读取方式来获取数据而导致的数据获取延迟和不同步的问题,提高了数据获取的效率和同步性,进而也提高了测试过程的效率。
参见图2,图2是本发明实施例二提供的数据测试方法的流程图。本实施例中数据测试方法的执行主体为终端。终端包括但不限于智能手机、平板电脑、可穿戴设备等移动终端,还可以是台式电脑等。如图所示的数据测试方法可以包括以下步骤:
S201:获取测试指令;所述测试指令包括待测对象的对象标识和测试方式。
在本实施例中S201与图1对应的实施例中S101的实现方式完全相同,具体可参考图1对应的实施例中的S101的相关描述,在此不再赘述。
进一步的,在步骤S202之前,还可以包括S2021~S2023:
S2021:确定待测试环境中所有测试对象对应的测试数据和所述测试数据的数据信息;所述数据信息包括所述测试数据的数据标识、数据类型以及存储位置;所述存储位置包括示存储所述测试数据的数据库名称。
本实施例中是将处理数据的方法流程预先进行封装得到封装方法,并将封装方法存储至方法存储库中。在对数据处理流程进行封装之间,先确定待测试环境中所有测试对象对应的测试数据和测试数据的数据信息。获取待封装为封装方法的初始文件,初始文件的数量可以是多个,每个初始文件用于表示一个数据处理流程,这些初始文件可以是数据处理源代码等形式。
具体的,本实施例中的数据信息可以包括测试数据的数据标识、数据类型以及存储位置,其中,数据标识可以包括该数据的数据名称或者编号等;数据类型用于表示数据的形式,可以是表格数据、图像数据或者文档数据等,例如Excel、本文文档(Textual,TXT)、并发版本***(Concurrent Versions System,CVS)的文件类型,此处不做限定;存储位置用于表示存储数据的数据库的名称,以及在该数据库中的具体存储区域等。
除此之外,考虑到不同数据库对应的数据读取方法可能不同,因此在获取数据信息时,还可以获取各个数据预设的数据读取方法,例如在Oracle、mysql、sqlserver、mongodb、redis中的数据读取方式,其中可以包括查找方式、查找权限、身份验证方法等,此处不做限定。
S2022:根据所述数据类型和所述存储位置,确定所述测试数据的处理流程;所述处理流程包括读取数据、判断数据以及处理数据。
在获取待测试环境中所有测试对象对应的测试数据和测试数据的数据信息之后,根据数据信息中的数据类型和存储位置,便可以确定出不同数据类型和存储位置对应的处理流程,本实施例中的处理流程可以包括读取数据、判断数据以及处理数据。其中,读取数据可以包括数据读取的方式或者路径;判断数据可以包括在读取数据之后对数据正确性、合法性的判断;处理数据可以包括在判断数据正确且合法之后,对数据进行处理,其处理方式可以包括数据清洗、数据筛选等,此处不做限定。
具体的,可以根据数据的存储位置确定数据读取的路径,根据数据类型确定数据读取的方式。示例性地,对于不同的文件类型,例如Excel或者CVS文件,由于是表格形式,所以需要按行、列、单元格、标签页来读取文件内容;对于TXT文件,由于数据都是按行进行存储,那么就需要按行、关键字来读取文件内容。除此之外,在对数据读取过程中除了应用到一些针对不同文件类型的数据读取方法之外,还可以包括各类数据库对应的数据读取方法等,例如支持Oracle、mysql、sqlserver、mongodb、redis中的数据读取方法。
S2023:对所述处理流程中的数据读取、数据判断以及数据处理过程进行封装,得到所述封装方法,并根据所述数据标识将所述封装方法存储至所述方法存储库中;所述数据标识与所述待测对象的对象标识对应。
在本实施例中,对根据封装方法对待测数据进行处理时,需要先将所有的数据读取、判断以及处理方法进行封装,得到封装方法。在很多情况下,封装过程会因为封装对象的不同而对应有不同的封装方式。根据测试数据的处理流程,将处理测试数据时所有需要的数据处理元素添加至封装方法中,完成封装方法的封装。将多个初始文件进行编译和配置,得到封装方法,根据封装方法以一个完整的数据处理流程处理数据,提高数据处理的效率。封装之前,用户需调用多次方法才能完成操作,封装之后,用户只需调用一次方法,使得自动化案例开发更加高效。
本实施例中确定封装方法的方式,可以是先根据数据处理请求确定对应的数据处理功能,再根据数据处理功能从方法数据库中确定与该数据处理功能对应的封装方法。除此之外,还可以是用户在数据处理设备上直接进行选择,来确定合适的方式。在对封装方法进行配置时,可以在工具中通过选择对应的读取、判断以及处理方法的选项,并确定这些分处理方式各自对应的处理参数。进一步的,如果需要对这一个步骤进行检验的话,就添加以下针对这个步骤的判断或检验方式。保存后,这个案例步骤就配置完毕,后续再执行案例时,执行到这个步骤时,就会调用并执行这个方法对应的函数代码。
示例性地,可以通过基于敏捷开发语言Groovy脚本语言的方式来封装各类读取文件方法,例如Excel、TXT、CVS,这样在实施数据驱动时十分方便。由于不同类型的文件的格式不同,所以读取和操作方式也会不同。对于Excel或者CVS文件,由于是表格形式,所以需要按行、列、单元格、标签页来读取文件内容;对于TXT文件,由于数据都是按行进行存储,那么就需要按行、关键字来读取文件内容。因此,对于不同类型的文件,需要封装的读取、判断和处理不同类型的文件的流程是一致的。
除此之外,本实施例中封装数据封装方法的过程中,还可支持多协议,将数据处理协议添加进封装方法中,例如文件传输协议、传输控制协议、超文本传输协议、超文本传输安全协议等协议,以更加清楚的确定不同数据对应的数据处理标准。
在将多个初始文件对应的方法封装为一个完整的数据封装方法之后,可以将封装方法存储在一个方法数据库中,以随时调用。具体的,在存储封装方法时,根据封装方法的功能先对该封装方法进行标识,其生成封装方法标识时,可以是根据该封装方法对应处理的数据的数据标识生成,然后按照封装方法的标识进行存储。也可以直接根据该封装方法对应的数据标识将封装方法存储至预设的方法存储库中,并且封装方法对应处理的数据的数据标识与待测对象的对象标识对应,以在处理待测对象生成的待测数据时,及时查找到待测数据对应的封装方法来调用。
S202:在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法。
在获取到待测对象的对象标识和测试方式之后,在方法存储库中查找与对象标识对应的目标封装方法,以通过目标封装方法从预设的数据存储库中读取、判断并处理待测对象生成的待测数据。避免通过数据标识来确定存储数据的数据库位置,再通过数据传输接口来获取数据的麻烦,提高数据读取效率。
S203:根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
在确定了目标封装方法之后,根据目标封装方法从数据存储库中统一读取待测对象的待测数据,并进行相应的判断和处理,最后根据测试指令中待测数据的测试方式,来测试待测试数据。进一步的,还可以根据测试参数生成测试报告。本实施例中预设有数据存储库,其中存储了各种类型的数据,这些数据可以是图像、表格或者文档文本等,同时这些数据的数据读取方式和接口各不相同。
在对待测数据进行测试之前,就已经把需要的多个步骤才能完成的操作封装到一个方法中,通过传入相应的入参即可完成一系列的操作。示例性地,若在执行对某一数据的判断步骤时,首先确定对该数据进行判断的完整的封装方法,例如从数据读取、数据判断以及发送结果这一处理序列,根据该封装方对数据进行完整的一个流程的处理。
进一步的,步骤S203可以包括步骤S2031~S2033:
S2031:确定通过所述目标封装方法在读取所述待测数据时所占用的数据读取线程的数量。
本实施例支持多线程运行,且内部已处理线程安全问题,案例执行效率极高。根据所述待测数据,确定待测数据对应的线程数量。若线程数量只有一个时,可以直接根据占用空闲线程来进行数据读取。
S2032:若所述数据读取线程的数量为至少两个,则根据预设的数据优先级,确定每个所述数据读取线程的执行优先级。
本实施例中根据每个数据接口的重要程度,预先设定各个数据接口对应的数据优先级,以通过不同数据接口执行数据读取线程时,当至少两个数据读取线程发生拥塞时,根据数据优先级来确定数据读取线程对应的数据读取任务的先后顺序,即执行优先级,防止数据拥塞。
若数据读取线程的数量为至少两个,例如待测数据来源于不同的数据接口,需要通过至少两个不同的数据接口来获取待测数据。则根据预设的数据优先级,确定每个数据读取线程对应的执行优先级,获取当前应用***的空闲线程,根据空闲线程和执行优先级,按照多线程运行的方式运行线程来处理数据。
S2033:根据所述执行优先级,按照多线程并行的方式读取每个数据读取线程对应的待测数据,判断并处理所述待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
在确定了每个数据服务线程对应的执行优先级之后,根据执行优先级由高到低的顺序,执行每个数据读取线程对应的数据读取任务,并根据测试方式对待测数据进行测试。
示例性地,现在需要执行某个目录下的所有自动化案例,那么后台就会根据线程池的大小来同时启动多个线程。假设现在线程池的大小是50,空闲线程是30,那么就会启动30个线程来同时执行30条自动化案例,等这30条自动化案例执行完毕,就会释放线程到线程池,然后使用这些线程去执行剩下的案例。进一步的,当实际使用环境中无法启动与当前数据读取线程需求对应数量的线程时,例如,当前只能启动20个线程,则根据数据优先级来确定数据读取线程对应的数据读取任务的先后顺序,即执行优先级,根据执行优先级由高到低的顺序,执行前20个数据读取线程对应的数据读取任务,当有线程空闲之后,再执行剩余的数据读取任务。
S204:获取测试完毕得到的测试参数;所述测试参数包括已处理数据量、处理成功数据量。
在将所有的待测数据测试完毕之后,获取测试完毕得到的测试参数。本实施例中的测试参数可以包括已处理数据量和处理成功数据量。其中,已处理数据量用于表示已经处理完毕的待测数据的数据量总和,处理成功数据量用于表示处理完毕的待测数据中,测试通过的数据量。
S205:根据所述待测数据的数据量和所述测试参数,计算本次测试的执行率和成功率。
在获取测试完毕得到的测试参数之后,根据待测数据的数据量和测试参数,计算本次测试的执行率和成功率。其中,成功率等于执行成功的案例数除以总的被执行的案例数;执行率等于被执行的案例数除以所有的案例数;错误率等于执行失败的案例数除以总的被执行的案例数。
S206:根据目标测试结果生成测试报告;所述目标测试结果用于表示所述执行率大于预设的执行率阈值,且所述成功率大于预设的成功率阈值时对应的测试结果。
在对数据进行处理之后,还可以获取数据处理之后的处理结果,并根据处理结果计算数据处理的执行率和错误率,最后根据执行率和错误率生成数据处理报告。除此之外,还可以是当用户配置好自动化案例后,可以选择某个目录下的所有案例进行批量执行,在执行完毕后,就可以根据上面的这些指标统计出测试报告。
上述方案,通过获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。获取测试完毕得到的测试参数;所述测试参数包括已处理数据量、处理成功数据量;根据所述待测数据的数据量和所述测试参数,计算本次测试的执行率和成功率;测试参数。通过预先根据不同的数据类型和存储位置封装数据读取、判断以及处理方法得到封装方法,并将数据封装方法存储在方法存储库中,再确定与对象标识相符的目标封装方法,避免了同时通过各不同接口或者不同的数据读取方式来获取数据而导致的数据获取延迟和不同步的问题,提高了数据获取的效率和同步性,进而也提高了测试过程的效率。
参见图3,图3是本发明实施例三提供的一种终端设备的示意图。终端设备包括的各单元用于执行图1~图2对应的实施例中的各步骤。具体请参阅图1~图2各自对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。本实施例的终端设备300包括:
获取单元301,用于获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;
查找单元302,用于在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;
测试单元303,用于根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
进一步的,所述终端设备还可以包括:
信息确定单元,用于确定待测试环境中所有测试对象对应的测试数据和所述测试数据的数据信息;所述数据信息包括所述测试数据的数据标识、数据类型以及存储位置;所述存储位置包括示存储所述测试数据的数据库名称;
流程确定单元,用于根据所述数据类型和所述存储位置,确定所述测试数据的处理流程;所述处理流程包括数据读取、数据判断以及数据处理;
方法封装单元,用于对所述处理流程中的数据读取、数据判断以及数据处理过程进行封装,得到所述封装方法,并根据所述数据标识将所述封装方法存储至所述方法存储库中;所述数据标识与所述待测对象的对象标识对应。
进一步的,所述测试单元可以包括:
数量确定单元,用于确定通过所述目标封装方法在读取所述待测数据时所占用的数据读取线程的数量;
优先级单元,用于若所述数据读取线程的数量为至少两个,则根据预设的数据优先级,确定每个所述数据读取线程的执行优先级;
并行执行单元,用于根据所述执行优先级,按照多线程并行的方式读取每个数据读取线程对应的待测数据,判断并处理所述待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
进一步的,所述终端设备还可以包括:
结果获取单元,用于获取测试完毕得到的测试参数;所述测试参数包括已处理数据量、处理成功数据量;
计算单元,用于根据所述待测数据的数据量和所述测试参数,计算本次测试的执行率和成功率;
报告生成单元,用于根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
上述方案,通过获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。获取测试完毕得到的测试参数;所述测试参数包括已处理数据量、处理成功数据量;根据所述待测数据的数据量和所述测试参数,计算本次测试的执行率和成功率;测试参数。通过预先根据不同的数据类型和存储位置封装数据读取、判断以及处理方法得到封装方法,并将数据封装方法存储在方法存储库中,再确定与对象标识相符的目标封装方法,避免了同时通过各不同接口或者不同的数据读取方式来获取数据而导致的数据获取延迟和不同步的问题,提高了数据获取的效率和同步性,进而也提高了测试过程的效率。
图4是本发明实施例四提供的终端设备的示意图。如图4所示,该实施例的终端设备4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42。所述处理器40执行所述计算机程序42时实现上述各个数据测试方法实施例中的步骤,例如图1所示的步骤101至103。或者,所述处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能,例如图3所示单元301至303的功能。
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述终端设备4中的执行过程。
所述终端设备4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是终端设备4的示例,并不构成对终端设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述终端设备4的内部存储单元,例如终端设备4的硬盘或内存。所述存储器41也可以是所述终端设备4的外部存储设备,例如所述终端设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card,FC)等。进一步地,所述存储器41还可以既包括所述终端设备4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据测试方法,其特征在于,包括:
获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;
在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;
根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
2.如权利要求1所述的数据测试方法,其特征在于,所述在预设的方法存储库中查找与所述对象标识对应的目标封装方法之前,还包括:
确定待测试环境中所有测试对象对应的测试数据和所述测试数据的数据信息;所述数据信息包括所述测试数据的数据标识、数据类型以及存储位置;所述存储位置包括示存储所述测试数据的数据库名称;
根据所述数据类型和所述存储位置,确定所述测试数据的处理流程;所述处理流程包括数据读取、数据判断以及数据处理;
对所述处理流程中的数据读取、数据判断以及数据处理过程进行封装,得到所述封装方法,并根据所述数据标识将所述封装方法存储至所述方法存储库中;所述数据标识与所述待测对象的对象标识对应。
3.如权利要求1所述的数据测试方法,其特征在于,所述根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试,包括:
确定通过所述目标封装方法在读取所述待测数据时所占用的数据读取线程的数量;
若所述数据读取线程的数量为至少两个,则根据预设的数据优先级,确定每个所述数据读取线程的执行优先级;
根据所述执行优先级,按照多线程并行的方式读取每个数据读取线程对应的待测数据,判断并处理所述待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
4.如权利要求1-3任一项所述的数据测试方法,其特征在于,所述根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试之后,还包括:
获取测试完毕得到的测试参数;所述测试参数包括已测试数据量、测试成功数据量;
根据所述待测数据的数据量和所述测试参数,计算本次测试的执行率和成功率;
根据目标测试结果生成测试报告;所述目标测试结果用于表示所述执行率大于预设的执行率阈值,且所述成功率大于预设的成功率阈值时对应的测试结果。
5.一种终端设备,其特征在于,包括存储器以及处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如下步骤:
获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;
在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;
根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
6.如权利要求5所述的终端设备,其特征在于,所述在预设的方法存储库中查找与所述对象标识对应的目标封装方法之前,还包括
确定待测试环境中所有测试对象对应的测试数据和所述测试数据的数据信息;所述数据信息包括所述测试数据的数据标识、数据类型以及存储位置;所述存储位置包括示存储所述测试数据的数据库名称;
根据所述数据类型和所述存储位置,确定所述测试数据的处理流程;所述处理流程包括数据读取、数据判断以及数据处理;
对所述处理流程中的数据读取、数据判断以及数据处理过程进行封装,得到所述封装方法,并根据所述数据标识将所述封装方法存储至所述方法存储库中;所述数据标识与所述待测对象的对象标识对应。
7.如权利要求5所述的终端设备,其特征在于,所述根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试,包括:
确定通过所述目标封装方法在读取所述待测数据时所占用的数据读取线程的数量;
若所述数据读取线程的数量为至少两个,则根据预设的数据优先级,确定每个所述数据读取线程的执行优先级;
根据所述执行优先级,按照多线程并行的方式读取每个数据读取线程对应的待测数据,判断并处理所述待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
8.如权利要求5-7任一项所述的数据测试方法,其特征在于,所述根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试之后,还包括:
获取测试完毕得到的测试参数;所述测试参数包括已测试数据量、测试成功数据量;
根据所述待测数据的数据量和所述测试参数,计算本次测试的执行率和成功率;
根据目标测试结果生成测试报告;所述目标测试结果用于表示所述执行率大于预设的执行率阈值,且所述成功率大于预设的成功率阈值时对应的测试结果。
9.一种终端设备,其特征在于,包括:
获取单元,用于获取测试指令;所述测试指令包括待测对象的对象标识和测试方式;
查找单元,用于在预设的方法存储库中查找与所述对象标识对应的目标封装方法;所述方法存储库中包括对测试对象进行读取、判断并处理的过程封装得到的封装方法;
测试单元,用于根据所述目标封装方法从预设的数据存储库中读取、判断并处理所述待测对象生成的待测数据,根据所述测试方式对处理之后的所述待测数据进行测试。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910840241.XA CN110750440A (zh) | 2019-09-06 | 2019-09-06 | 数据测试方法及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910840241.XA CN110750440A (zh) | 2019-09-06 | 2019-09-06 | 数据测试方法及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110750440A true CN110750440A (zh) | 2020-02-04 |
Family
ID=69276069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910840241.XA Pending CN110750440A (zh) | 2019-09-06 | 2019-09-06 | 数据测试方法及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750440A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382075A (zh) * | 2020-03-10 | 2020-07-07 | 北京同邦卓益科技有限公司 | 一种自动化测试的数据处理方法及装置 |
CN112380167A (zh) * | 2020-11-17 | 2021-02-19 | 深圳市和讯华谷信息技术有限公司 | 批量数据验证方法、装置、计算机设备及存储介质 |
CN113515462A (zh) * | 2021-08-24 | 2021-10-19 | 北京百度网讯科技有限公司 | 用于测试的方法、装置、设备以及存储介质 |
CN116630034A (zh) * | 2023-07-21 | 2023-08-22 | 杭银消费金融股份有限公司 | 一种风控数据处理***及方法 |
-
2019
- 2019-09-06 CN CN201910840241.XA patent/CN110750440A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382075A (zh) * | 2020-03-10 | 2020-07-07 | 北京同邦卓益科技有限公司 | 一种自动化测试的数据处理方法及装置 |
CN111382075B (zh) * | 2020-03-10 | 2023-09-26 | 北京同邦卓益科技有限公司 | 一种自动化测试的数据处理方法及装置 |
CN112380167A (zh) * | 2020-11-17 | 2021-02-19 | 深圳市和讯华谷信息技术有限公司 | 批量数据验证方法、装置、计算机设备及存储介质 |
CN113515462A (zh) * | 2021-08-24 | 2021-10-19 | 北京百度网讯科技有限公司 | 用于测试的方法、装置、设备以及存储介质 |
CN116630034A (zh) * | 2023-07-21 | 2023-08-22 | 杭银消费金融股份有限公司 | 一种风控数据处理***及方法 |
CN116630034B (zh) * | 2023-07-21 | 2023-11-07 | 杭银消费金融股份有限公司 | 一种风控数据处理***及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110750440A (zh) | 数据测试方法及终端设备 | |
CN109033772B (zh) | 一种验证信息的输入方法及装置 | |
CN111104421A (zh) | 一种基于数据接口标准配置的数据查询方法及装置 | |
CN106909498A (zh) | 一种Java程序注入故障的方法和*** | |
CN108460068B (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
CN110737689B (zh) | 数据标准符合性检测方法、装置、***及存储介质 | |
CN112363753A (zh) | 数据校验方法、装置、电子设备及存储介质 | |
CN111615688A (zh) | 一种断言验证代码绑定方法及装置 | |
CN113312338A (zh) | 数据一致性的校验方法、装置、设备、介质及程序产品 | |
CN111177113A (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
CN111475494A (zh) | 一种海量数据处理方法、***、终端及存储介质 | |
CN110688111A (zh) | 业务流程的配置方法、装置、服务器和存储介质 | |
CN115599359A (zh) | 一种代码生成方法、装置、设备及介质 | |
CN111488095A (zh) | 一种用户登录管理方法及装置 | |
CN114816993A (zh) | 一种全链路接口测试方法、***、介质及电子设备 | |
CN110888972A (zh) | 一种基于Spark Streaming的敏感内容识别方法及装置 | |
CN109324838B (zh) | 单片机程序的执行方法、执行装置及终端 | |
CN112416725A (zh) | 一种压力测试方法及装置 | |
CN117171030A (zh) | 软件运行环境检测方法、装置、设备及存储介质 | |
CN111897728B (zh) | 接口调试方法及相关设备 | |
US11989560B2 (en) | Method and device for executing instructions to perform artificial intelligence | |
CN112907198B (zh) | 业务状态流转维护方法、装置及电子设备 | |
CN110515653B (zh) | 文档生成方法、装置、电子设备及计算机可读存储介质 | |
CN109783134B (zh) | 前端页面配置方法、装置及电子设备 | |
CN113220382B (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 |