CN108459964B - 测试用例选择方法、装置、设备以及计算机可读存储介质 - Google Patents
测试用例选择方法、装置、设备以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108459964B CN108459964B CN201810183247.XA CN201810183247A CN108459964B CN 108459964 B CN108459964 B CN 108459964B CN 201810183247 A CN201810183247 A CN 201810183247A CN 108459964 B CN108459964 B CN 108459964B
- Authority
- CN
- China
- Prior art keywords
- test case
- test
- regular expression
- regular
- expression list
- 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.)
- Active
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
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是本发明实施例提供的一种测试用例选择方法的另一示意流程图;
图5是本发明实施例提供的一种测试用例选择装置的示意性框图;
图6是本发明实施例提供的一种测试用例选择装置的另一示意性框图;
图7是本发明实施例提供的一种测试用例选择装置的另一示意性框图;
图8是本发明实施例提供的一种测试用例选择装置的另一示意性框图;
图9是本发明实施例提供的一种计算机设备结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
请参阅图1,图1是本发明实施例提供的一种测试用例选择方法的示意流程图。该方法可以运行在智能手机(如Android手机、IOS手机等)、平板电脑、笔记本电脑以及智能设备等终端中。如图1所示,该方法的步骤包括步骤S101~S104。
S101,构建正则表达式列表,所述正则表达式列表包括若干正则表达式。
在本发明实施例中,可以根据用户需求构建一个正则表达式列表,该正则表达式列表可包括若干个正则表达式。一般情况下,正则表达式的数量可以根据需要进行测试的应用程序的需求进行设置。
其中,正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串;在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
通常,正则表达式就是一个字符模式,和String对象类似,在JavaScript中正则表达式也是一个对象,它主要用于字符串的模式匹配。创建正则表达式有两种方式:隐式创建(文字量方法)和显示创建(使用构造函数)。
具体的,第一,使用隐式方法创建正则表达式的方法为,将文字量的正则表达式赋值给一个变量。正则表达式是包含在两个斜杠之间的一个或多个字符,在后一个斜杠的后面,可以指定一个或多个选项。隐式创建正则表达式的语法为:
Var regExp=/pattern/flags
其中,“pattern”为指定的匹配模式,“flags”为0个或多个可选项,其中i表示忽略大小写,就是在字符串匹配的时候不区分大小写;g表示全局匹配,即匹配字符串中出现的所有模式;m表示进行多行匹配。例如:
var regExp1=/abc/;
var regExp2=/abc/gi;
第二,通过显示的方法创建正则表达式的方法为,显示的创建正则表达式是通过构造函数RegExp()来实现。构造函数RegExp()中有2个参数:第一个参数指定正则表达式,这是正则表达式的字符串表示方法,例如:“abc”表示隐式创建中的/abc/,第二个参数是可选参数,它指定正则表达式的选项,它的标记字符和隐式创建时的相同,意义也相同。显示创建正则表达式的语法为:
var regExp=
new
RegExp("pattern","flags")。
进一步地,如图2所示,所述步骤S101包括步骤S201~S203。
S201,判断是否接收到预设操作指令,所述预设操作指令包括若干预设特征信息。
在本发明实施例中,为了构建符合用户需求的正则表达式,需要判断是否接收到预设操作指令,该预设操作指令可以包括若干预设特征信息,这些预设特征信息跟用户进行某一类测试时需要的测试用例有关。具体的,测试用例一般包括有特征参数,如测试用例的名称、测试步骤的数量以及测试数据等。例如,预设特征信息可以是跟测试用例的名称相关的,也可是跟测试用力的测试步骤的数量相关的,还可以是跟测试用例的测试数据相关的。
S202,若接收到预设操作指令,根据所述预设操作指令中的若干预设特征信息对应地生成若干正则表达式。
在本发明实施例中,当接收到预设操作指令时,可以分析该预设操作指令中的若干预设特征信息,并根据所述预设特征信息对应地生成若干的正则表达式,即确定该预设操作指令中的预设特征信息,所有的预设特征信息均为用户进行测试是需要的测试用例所包括的某些特征参数,如测试用例的名称、测试步骤的数量以及测试数据等。此时,可以根据测试用例的某些特征参数对应地生成与各个参数对应的正则表达式。
例如,当需要的测试用例主要用于测试被测程序的性能时,对应的正则表达式可以是perf_network*;当需要的测试用例主要用于测试被测程序的功能时,对应的正则表达式可以是func_gui*。又例如,当需要的测试用例跟复杂程度相关时,可以在对应的正则表达式中预设好需要的测试步骤的数量。
S203,将所生成的若干正则表达式组合成一正则表达式列表。
在本发明实施例中,为了便于管理,此时需要将生成的全部的正则表达式组在一起,构成一个正则表达式列表,便于后续的管理和匹配。
S102,获取测试用例数据库中的所有测试用例的特征参数。
在本发明实施例中,测试用例可以包括测试用例的名称、测试目标、测试环境、测试数据、测试步骤以及预期结果等,测试过程中根据测试用例搭建测试环境,并按照预设的测试目标和测试步骤输入预设的测试数据,并核对输出结果与预期结果是否匹配。
根据测试用例可以生成相应的测试请求信息,测试请求信息中可以直接携带测试脚本,如自动化测试脚本;又该自动化测试脚本还可以通过测试用例中的自动化脚本路径来获取,故测试请求信息也可以携带有测试脚本路径以及测试脚本运行过程中所需的相关数据等信息。
作为优选的,所述特征参数至少包括测试用例的名称,所述特征参数还可以包括测试步骤的数量。
作为进一步的实施例,如图3所示,所述测试用例的特征参数包括测试用例的名称,所述步骤S102包括步骤S301~S302。
S301,根据第一预设规则为测试用例数据库中的每个测试用例进行命名。
在本发明实施例中,该第一预设规则可以是根据测试用例的测试目标确定测试用例的用途,从而根据用途对每个测试用例进行命名。例如,当测试用例的测试目标是检测被测程序的性能时,测试用例中的名称应包括字符“perf_network”;当测试用例的测试目标是检测被测程序的功能时,测试用例中的名称应包括字符“func_gui”。
S302,获取测试用例数据库中的每个测试用例的名称。
在本发明实施例中,为了得到用户需要的测试用例,可以获取每个测试用例的名称。具体的,可以在每次获取测试用例数据库中的其中一个测试用例的名称,并将所述获取到的名称与正则表达式列表中的正则表达式进行匹配后,再对测试用例数据库中的另一个测试用例的名称去与正则表达式列表中的正则表达式进行匹配,直至匹配完测试用例数据库中所有的测试用例,其中,正则表达式中包括有关于名称的特征信息。
作为进一步的另一实施例,如图4所示,所述测试用例的特征参数包括测试用例的测试步骤的数量,所述步骤S102包括步骤S401~S402。
S401,统计测试用列数据库中的每个测试用例的测试步骤的数量。
在本发明实施例中,为了确定每个测试用例运行时的复杂程度,可以选择对测试用例库中的每个测试用例的测试步骤进行统计,即通过统计来确定每个测试用例的测试步骤的数量。
S402,获取统计完成后的测试用例数据库中的每个测试用例的测试步骤的数量。
在本发明实施例中,为了得到用户需要的测试用例,可以获取每个测试用例的测试步骤的数量。具体的,可以在每次获取测试用例数据库中的其中一个测试用例的测试步骤的数量,并将所述获取到的测试步骤的数量与正则表达式列表中的正则表达式进行匹配后,再对测试用例数据库中的另一个测试用例的测试步骤的数量去与正则表达式列表中的正则表达式进行匹配,直至匹配完测试用例数据库中所有的测试用例,其中正则表达式中包括有与测试步骤的数量相关的特征信息。
S103,将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配。
在本发明实施例中,为了使得每个测试用例均能够进行正则匹配,从而选择出符合需要的测试用例,具体需要将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配。例如,当特征参数为测试用力的名称时,需要将其中一个测试用例的名称与所述正则表达式列表中的正则表达式依次进行正则匹配,直至所述其中一个测试用例的名称与其中一个正则表达式相匹配,此时则可以进行步骤S104。
若所述其中一个测试用例的名称与所有的正则表达式都不匹配,此时则表明,该测试用例被排除。同时要获取测试用例数据库中的另一个测试用例的特征参数,将另一个测试用例的特征参数与正则表达式列表中的正则表达式进行正则匹配,直至处理完测试用例数据库中的所有测试用例。
S104,若其中一个所述测试用例的特征参数与所述正则表达式列表中的任一正则表达式相匹配,将该测试用例确定为目标测试用例。
在本发明实施例中,若其中一个所述测试用例的特征参数与所述正则表达式列表中的任一正则表达式匹配成功,则表明该测试用例符合用户需求,此时需要将该测试用例确定为目标测试用例。当然,作为优选的,还可以将该测试用例标识为目标测试用例。当所有的测试用例经过正则匹配从而得出符合要求的目标测试用例后,若应用程序进行测试即可直接调用经正则匹配后得出的目标测试用例进行测试,不仅方便用户根据需要对正则表达式进行调整,从而筛选测试用例,还能提高测试效率。
作为进一步的实施例,所述方法还包括以下步骤:
S105,将所确定的目标测试用例存储到目标测试用例库中。
在本发明实施例中,为了更好地管理目标测试用例,以便于应用程序进行测试,可以将确定好的目标测试用例存储到目标测试用例库中。该目标测试用例库用于存放所述测试用例数据库中与正则表达式进行正则匹配成功的测试用例,应用程序在进行测试时可以直接调用该目标测试用例库,实现了高效精准的测试。
综上,本发明实施例可更为方便地选择需要的测试用例,并使得执行测试更为简单精准,即通过正则匹配能够快速匹配出符合特定规则的测试用例进行测试,极大地提高了测试效率。
本领域普通技术员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
请参阅图5,对应上述一种测试用例选择方法,本发明实施例还提出一种测试用例选择装置,该装置100包括:构建单元101、获取单元102、处理单元103、确定单元104。
所述构建单元101,用于构建正则表达式列表,所述正则表达式列表包括若干正则表达式。
在本发明实施例中,可以根据用户需求构建一个正则表达式列表,该正则表达式列表可包括若干个正则表达式。一般情况下,正则表达式的数量可以根据需要进行测试的应用程序的需求进行设置。
其中,正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串;在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
通常,正则表达式就是一个字符模式,和String对象类似,在JavaScript中正则表达式也是一个对象,它主要用于字符串的模式匹配。创建正则表达式有两种方式:隐式创建(文字量方法)和显示创建(使用构造函数)。
具体的,第一,使用隐式方法创建正则表达式的方法为,将文字量的正则表达式赋值给一个变量。正则表达式是包含在两个斜杠之间的一个或多个字符,在后一个斜杠的后面,可以指定一个或多个选项。隐式创建正则表达式的语法为:
Var regExp=/pattern/flags
其中,“pattern”为指定的匹配模式,“flags”为0个或多个可选项,其中i表示忽略大小写,就是在字符串匹配的时候不区分大小写;g表示全局匹配,即匹配字符串中出现的所有模式;m表示进行多行匹配。例如:
var regExp1=/abc/;
var regExp2=/abc/gi;
第二,通过显示的方法创建正则表达式的方法为,显示的创建正则表达式是通过构造函数RegExp()来实现。构造函数RegExp()中有2个参数:第一个参数指定正则表达式,这是正则表达式的字符串表示方法,例如:“abc”表示隐式创建中的/abc/,第二个参数是可选参数,它指定正则表达式的选项,它的标记字符和隐式创建时的相同,意义也相同。显示创建正则表达式的语法为:
var regExp=
new
RegExp("pattern","flags")。
进一步地,如图6所示,所述构建单元101包括:判断单元201、生成单元202以及组合单元203。
判断单元201,用于判断是否接收到预设操作指令,所述预设操作指令包括若干预设特征信息。
在本发明实施例中,为了构建符合用户需求的正则表达式,需要判断是否接收到预设操作指令,该预设操作指令可以包括若干预设特征信息,这些预设特征信息跟用户进行某一类测试时需要的测试用例有关。具体的,测试用例一般包括有特征参数,如测试用例的名称、测试步骤的数量以及测试数据等。例如,预设特征信息可以是跟测试用例的名称相关的,也可是跟测试用力的测试步骤的数量相关的,还可以是跟测试用例的测试数据相关的。
生成单元202,用于若接收到预设操作指令,根据所述预设操作指令中的若干预设特征信息对应地生成若干正则表达式。
在本发明实施例中,当接收到预设操作指令时,可以分析该预设操作指令中的若干预设特征信息,并根据所述预设特征信息对应地生成若干的正则表达式,即确定该预设操作指令中的预设特征信息,所有的预设特征信息均为用户进行测试是需要的测试用例所包括的某些特征参数,如测试用例的名称、测试步骤的数量以及测试数据等。此时,可以根据测试用例的某些特征参数对应地生成与各个参数对应的正则表达式。
例如,当需要的测试用例主要用于测试被测程序的性能时,对应的正则表达式可以是perf_network*;当需要的测试用例主要用于测试被测程序的功能时,对应的正则表达式可以是func_gui*。又例如,当需要的测试用例跟复杂程度相关时,可以在对应的正则表达式中预设好需要的测试步骤的数量。
组合单元203,用于将所生成的若干正则表达式组合成一正则表达式列表。
在本发明实施例中,为了便于管理,此时需要将生成的全部的正则表达式组在一起,构成一个正则表达式列表,便于后续的管理和匹配。
所述获取单元102,用于获取测试用例数据库中的所有测试用例的特征参数。
在本发明实施例中,测试用例可以包括测试用例的名称、测试目标、测试环境、测试数据、测试步骤以及预期结果等,测试过程中根据测试用例搭建测试环境,并按照预设的测试目标和测试步骤输入预设的测试数据,并核对输出结果与预期结果是否匹配。
根据测试用例可以生成相应的测试请求信息,测试请求信息中可以直接携带测试脚本,如自动化测试脚本;又该自动化测试脚本还可以通过测试用例中的自动化脚本路径来获取,故测试请求信息也可以携带有测试脚本路径以及测试脚本运行过程中所需的相关数据等信息。
作为优选的,所述特征参数至少包括测试用例的名称,所述特征参数还可以包括测试步骤的数量。
作为进一步的实施例,如图7所示,所述测试用例的特征参数包括测试用例的名称,所述获取单元102包括:命名单元301以及第一调整单元302。
命名单元301,用于根据第一预设规则为测试用例数据库中的每个测试用例进行命名。
在本发明实施例中,该第一预设规则可以是根据测试用例的测试目标确定测试用例的用途,从而根据用途对每个测试用例进行命名。例如,当测试用例的测试目标是检测被测程序的性能时,测试用例中的名称应包括字符“perf_network”;当测试用例的测试目标是检测被测程序的功能时,测试用例中的名称应包括字符“func_gui”。
调整单元302,用于获取测试用例数据库中的每个测试用例的名称。
在本发明实施例中,为了得到用户需要的测试用例,可以获取每个测试用例的名称。具体的,可以在每次获取测试用例数据库中的其中一个测试用例的名称,并将所述获取到的名称与正则表达式列表中的正则表达式进行匹配后,再对测试用例数据库中的另一个测试用例的名称去与正则表达式列表中的正则表达式进行匹配,直至匹配完测试用例数据库中所有的测试用例,其中,正则表达式中包括有关于名称的特征信息。
作为进一步的另一实施例,如图8所示,所述测试用例的特征参数包括测试用例的测试步骤的数量,所述获取单元102还包括:统计单元401以及第二调整单元402。
统计单元401,用于统计测试用列数据库中的每个测试用例的测试步骤的数量。
在本发明实施例中,为了确定每个测试用例运行时的复杂程度,可以选择对测试用例库中的每个测试用例的测试步骤进行统计,即通过统计来确定每个测试用例的测试步骤的数量。
第二调整单元402,用于获取统计完成后的测试用例数据库中的每个测试用例的测试步骤的数量。
在本发明实施例中,为了得到用户需要的测试用例,可以获取每个测试用例的测试步骤的数量。具体的,可以在每次获取测试用例数据库中的其中一个测试用例的测试步骤的数量,并将所述获取到的测试步骤的数量与正则表达式列表中的正则表达式进行匹配后,再对测试用例数据库中的另一个测试用例的测试步骤的数量去与正则表达式列表中的正则表达式进行匹配,直至匹配完测试用例数据库中所有的测试用例,其中正则表达式中包括有与测试步骤的数量相关的特征信息。
所述处理单元103,用于将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配。
在本发明实施例中,为了使得每个测试用例均能够进行正则匹配,从而选择出符合需要的测试用例,具体需要将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配。例如,当特征参数为测试用力的名称时,需要将其中一个测试用例的名称与所述正则表达式列表中的正则表达式依次进行正则匹配,直至所述其中一个测试用例的名称与其中一个正则表达式相匹配,此时则执行确定单元104。
若所述其中一个测试用例的名称与所有的正则表达式都不匹配,此时则表明,该测试用例被排除。同时要获取测试用例数据库中的另一个测试用例的特征参数,将另一个测试用例的特征参数与正则表达式列表中的正则表达式进行正则匹配,直至处理完测试用例数据库中的所有测试用例。
所述确定单元104,用于若其中一个所述测试用例的特征参数与所述正则表达式列表中的任一正则表达式相匹配,将该测试用例确定为目标测试用例。
在本发明实施例中,若其中一个所述测试用例的特征参数与所述正则表达式列表中的任一正则表达式匹配成功,则表明该测试用例符合用户需求,此时需要将该测试用例确定为目标测试用例。当然,作为优选的,还可以将该测试用例标识为目标测试用例。当所有的测试用例经过正则匹配从而得出符合要求的目标测试用例后,若应用程序进行测试即可直接调用经正则匹配后得出的目标测试用例进行测试,不仅方便用户根据需要对正则表达式进行调整,从而筛选测试用例,还能提高测试效率。
作为进一步的实施例,所述装置还包括:
存储单元,用于将所确定的目标测试用例存储到目标测试用例库中。
在本发明实施例中,为了更好地管理目标测试用例,以便于应用程序进行测试,可以将确定好的目标测试用例存储到目标测试用例库中。该目标测试用例库用于存放所述测试用例数据库中与正则表达式进行正则匹配成功的测试用例,应用程序在进行测试时可以直接调用该目标测试用例库,实现了高效精准的测试。
综上,本发明实施例可更为方便地选择需要的测试用例,并使得执行测试更为简单精准,即通过正则匹配能够快速匹配出符合特定规则的测试用例进行测试,极大地提高了测试效率。
由以上可见,在硬件实现上,以上构建单元101、获取单元102、处理单元103、确定单元104等可以以硬件形式内嵌于或独立于测试用例选择的装置中,也可以以软件形式存储于测试用例选择装置的存储器中,以便处理器调用执行以上各个单元对应的操作。该处理器可以为中央处理单元(CPU)、微处理器、单片机等。
上述测试用例选择装置可以实现为一种计算机程序的形式,计算机程序可以在如图9所示的计算机设备上运行。
图9为本发明一种计算机设备的结构组成示意图。该设备可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。参照图9,该计算机设备500包括通过系统总线501连接的处理器502、非易失性存储介质503、内存储器504和网络接口505。其中,该计算机设备500的非易失性存储介质503可存储操作系统5031和计算机程序5032,该计算机程序5032被执行时,可使得处理器502执行一种测试用例选择方法。该计算机设备500的处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。该内存储器504为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器502执行一种测试用例选择方法。计算机设备500的网络接口505用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502运行非易失性存储介质503中的计算机程序5032时执行如下操作:构建正则表达式列表,所述正则表达式列表包括若干正则表达式;获取测试用例数据库中的所有测试用例的特征参数;将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配;若所述其中一个测试用例的特征参数与所述正则表达式列表中的任一正则表达式相匹配,将所述其中一个测试用例确定为目标测试用例。
在一实施例中,所述处理器502在实现所述构建正则表达式列表的步骤时具体执行如下操作:判断是否接收到预设操作指令,所述预设操作指令包括若干预设特征信息;若接收到预设操作指令,根据所述预设操作指令中的若干预设特征信息对应地生成若干正则表达式;将所生成的若干正则表达式组合成一正则表达式列表。
在一实施例中,所述处理器502在实现所述获取测试用例数据库中的所有测试用例的特征参数的步骤时具体执行如下操作:根据第一预设规则为测试用例数据库中的每个测试用例进行命名;获取测试用例数据库中的每个测试用例的名称。
在一实施例中,所述处理器502在实现所述获取测试用例数据库中的所有测试用例的特征参数的步骤时具体执行如下操作:统计测试用列数据库中的每个测试用例的测试步骤的数量;获取统计完成后的测试用例数据库中的每个测试用例的测试步骤的数量。
所述处理器502运行所述计算机程序5032时还执行如下操作:将所确定的目标测试用例存储到目标测试用例库中。
本领域技术人员可以理解,图9中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图9所示实施例一致,在此不再赘述。
本发明提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行,以实现以下步骤:构建正则表达式列表,所述正则表达式列表包括若干正则表达式;获取测试用例数据库中的所有测试用例的特征参数;将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配;若所述其中一个测试用例的特征参数与所述正则表达式列表中的任一正则表达式相匹配,将所述其中一个测试用例确定为目标测试用例。
所述处理器还用于实现以下步骤:判断是否接收到预设操作指令,所述预设操作指令包括若干预设特征信息;若接收到预设操作指令,根据所述预设操作指令中的若干预设特征信息对应地生成若干正则表达式;将所生成的若干正则表达式组合成一正则表达式列表。
所述处理器还用于实现以下步骤:根据第一预设规则为测试用例数据库中的每个测试用例进行命名;获取测试用例数据库中的每个测试用例的名称。
所述处理器还用于实现以下步骤:统计测试用列数据库中的每个测试用例的测试步骤的数量;获取统计完成后的测试用例数据库中的每个测试用例的测试步骤的数量。
所述处理器还用于实现以下步骤:将所确定的目标测试用例存储到目标测试用例库中。
本发明前述的存储介质包括:磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等各种可以存储程序代码的介质。
本发明所有实施例中的单元可以通过通用集成电路,例如CPU(CentralProcessing Unit,中央处理器),或通过ASIC(Application Specific IntegratedCircuit,专用集成电路)来实现。
本发明实施例测试用例选择方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例测试用例选择终端中的单元可以根据实际需要进行合并、划分和删减。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种测试用例选择方法,其特征在于,所述方法包括:
构建正则表达式列表,所述正则表达式列表包括若干正则表达式;
获取测试用例数据库中的所有测试用例的特征参数;
将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配;
若其中一个所述测试用例的特征参数与所述正则表达式列表中的任一正则表达式相匹配,将该测试用例确定为目标测试用例;
其中,所述构建正则表达式列表,包括:判断是否接收到预设操作指令,所述预设操作指令包括若干预设特征信息;
若接收到预设操作指令,根据所述预设操作指令中的若干预设特征信息对应地生成若干正则表达式;
将所生成的若干正则表达式组合成一正则表达式列表;
其中,所述测试用例的特征参数包括测试用例的名称,所述获取测试用例数据库中的所有测试用例的特征参数包括:
根据第一预设规则为测试用例数据库中的每个测试用例进行命名,其中,所述第一预设规则为根据所述测试用例的测试目标确定所述测试用例的用途以便于根据所述用途对每个所述测试用例进行命名;
获取测试用例数据库中的每个测试用例的名称。
2.如权利要求1所述的方法,其特征在于,所述测试用例的特征参数包括测试用例的测试步骤的数量,所述获取测试用例数据库中的所有测试用例的特征参数包括:
统计测试用列数据库中的每个测试用例的测试步骤的数量;
获取统计完成后的测试用例数据库中的每个测试用例的测试步骤的数量。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
将所确定的目标测试用例存储到目标测试用例库中。
4.一种测试用例选择装置,其特征在于,所述装置包括:
构建单元,用于构建正则表达式列表,所述正则表达式列表包括若干正则表达式;
获取单元,用于获取测试用例数据库中的所有测试用例的特征参数;
处理单元,用于将每个测试用例的特征参数均与所述正则表达式列表中的正则表达式依次进行正则匹配;
确定单元,用于若其中一个所述测试用例的特征参数与所述正则表达式列表中的任一正则表达式相匹配,将该测试用例确定为目标测试用例;
其中,所述构建单元,包括:
判断单元,用于判断是否接收到预设操作指令,所述预设操作指令包括若干预设特征信息;
生成单元,用于若接收到预设操作指令,根据所述预设操作指令中的若干预设特征信息对应地生成若干正则表达式;
组合单元,用于将所生成的若干正则表达式组合成一正则表达式列表;
其中,所述获取单元包括:
命名单元,用于根据第一预设规则为测试用例数据库中的每个测试用例进行命名;
第一调整单元,用于获取测试用例数据库中的每个测试用例的名称。
5.一种计算机设备,其特征在于,包括:
存储器,用于存储实现测试用例选择的程序;以及
处理器,用于运行所述存储器中存储的实现测试用例选择的程序,以执行如权利要求1-3任一项所述的方法。
6.一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行,以实现如权利要求1-3任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810183247.XA CN108459964B (zh) | 2018-03-06 | 2018-03-06 | 测试用例选择方法、装置、设备以及计算机可读存储介质 |
PCT/CN2018/085257 WO2019169723A1 (zh) | 2018-03-06 | 2018-05-02 | 测试用例选择方法、装置、设备以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810183247.XA CN108459964B (zh) | 2018-03-06 | 2018-03-06 | 测试用例选择方法、装置、设备以及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108459964A CN108459964A (zh) | 2018-08-28 |
CN108459964B true CN108459964B (zh) | 2021-05-04 |
Family
ID=63217213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810183247.XA Active CN108459964B (zh) | 2018-03-06 | 2018-03-06 | 测试用例选择方法、装置、设备以及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108459964B (zh) |
WO (1) | WO2019169723A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815123A (zh) * | 2018-12-15 | 2019-05-28 | 中国平安人寿保险股份有限公司 | 接口测试用例脚本分类方法、装置、电子设备及介质 |
CN109815127B (zh) * | 2018-12-21 | 2022-11-15 | 浙江数链科技有限公司 | 自动化脚本转换方法、装置、计算机设备和存储介质 |
CN109787682B (zh) * | 2019-01-04 | 2024-05-17 | 深圳市亚派光电器件有限公司 | 光模块自动调试方法、装置及计算机可读介质 |
CN109918290B (zh) * | 2019-01-17 | 2022-03-15 | 平安科技(深圳)有限公司 | 目标设备的自动筛选方法、装置、计算机设备及存储介质 |
CN110245072A (zh) * | 2019-05-20 | 2019-09-17 | 深圳壹账通智能科技有限公司 | 一种测试方法及装置 |
CN110471858B (zh) * | 2019-08-22 | 2023-09-01 | 腾讯科技(深圳)有限公司 | 应用程序测试方法、装置及存储介质 |
CN110908902B (zh) * | 2019-11-12 | 2023-04-21 | 北京云测信息技术有限公司 | 一种测试步骤的编辑方法、装置及电子设备 |
CN111897724B (zh) * | 2020-07-21 | 2022-12-06 | 国云科技股份有限公司 | 一种适用于云平台的自动化测试方法及装置 |
CN116560962A (zh) * | 2023-05-15 | 2023-08-08 | 海光信息技术股份有限公司 | 内核性能验证方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9400889B2 (en) * | 2004-06-04 | 2016-07-26 | Hewlett Packard Enterprise Development Lp | Apparatus and method for developing secure software |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2713247C (en) * | 2009-08-31 | 2015-06-16 | Accenture Global Services Gmbh | Integration environment generator |
CN101902470B (zh) * | 2010-07-14 | 2013-08-21 | 南京大学 | 一种基于表单特征的Web安全漏洞动态检测方法 |
CN102385551B (zh) * | 2010-08-31 | 2015-04-29 | 西门子公司 | 一种筛选测试用例的方法、装置及系统 |
CN102014016A (zh) * | 2010-08-31 | 2011-04-13 | 北京邮电大学 | 一种网络协议缺陷测试系统及方法 |
CN103530223B (zh) * | 2012-07-06 | 2018-05-04 | 百度在线网络技术(北京)有限公司 | 一种自动生成单元测试用例的方法及装置 |
CN104391796B (zh) * | 2014-12-05 | 2018-01-02 | 上海斐讯数据通信技术有限公司 | 一种测试用例解析方法 |
US9396100B2 (en) * | 2014-12-05 | 2016-07-19 | International Business Machines Corporation | Software testing optimizer |
CN105630681A (zh) * | 2015-12-28 | 2016-06-01 | 上海瀚之友信息技术服务有限公司 | 一种基于web行为驱动的自动化测试方法及系统 |
CN106326122B (zh) * | 2016-08-23 | 2018-08-31 | 北京精密机电控制设备研究所 | 一种软件单元测试用例管理系统 |
CN107193739B (zh) * | 2017-05-23 | 2020-06-05 | 张泽祎 | 一种黑盒回归测试方法 |
CN107678951A (zh) * | 2017-09-21 | 2018-02-09 | 平安科技(深圳)有限公司 | 测试用例自动化管理方法、装置、设备及存储介质 |
-
2018
- 2018-03-06 CN CN201810183247.XA patent/CN108459964B/zh active Active
- 2018-05-02 WO PCT/CN2018/085257 patent/WO2019169723A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9400889B2 (en) * | 2004-06-04 | 2016-07-26 | Hewlett Packard Enterprise Development Lp | Apparatus and method for developing secure software |
Non-Patent Citations (1)
Title |
---|
How to run test cases in a specified file;user972946;《https://stackoverflow.com/questions/16935965/how-to-run-test-cases-in-a-specified-file》;20130605;全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2019169723A1 (zh) | 2019-09-12 |
CN108459964A (zh) | 2018-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108459964B (zh) | 测试用例选择方法、装置、设备以及计算机可读存储介质 | |
CN109542399B (zh) | 软件开发方法、装置、终端设备及计算机可读存储介质 | |
CN109901834B (zh) | 文档页面生成方法、装置、计算机设备和存储介质 | |
CN107239392B (zh) | 一种测试方法、装置、终端及存储介质 | |
CN108388515B (zh) | 测试数据生成方法、装置、设备以及计算机可读存储介质 | |
CN110944048B (zh) | 业务逻辑配置方法及装置 | |
US9454467B2 (en) | Method and apparatus for mining test coverage data | |
CN107729227B (zh) | 应用程序测试范围确定方法、系统、服务器和存储介质 | |
US20180203684A1 (en) | Staged application rollout | |
CN108776587B (zh) | 数据获取方法、装置、计算机设备以及存储介质 | |
CN108415998B (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
CN113312072A (zh) | 配置文件更新方法及装置、电子设备和介质 | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN107145446B (zh) | 一种应用程序app的测试方法、装置和介质 | |
CN111581271A (zh) | 接口参数确定方法、装置、计算机设备和存储介质 | |
US20150186195A1 (en) | Method of analysis application object which computer-executable, server performing the same and storage media storing the same | |
CN109684008A (zh) | 卡片渲染方法、装置、终端及计算机可读存储介质 | |
CN109614325B (zh) | 一种确定控件属性的方法及装置、电子设备和存储介质 | |
CN112306471A (zh) | 一种任务的调度方法和装置 | |
CN107783867B (zh) | 手势测试方法、装置、计算机设备和存储介质 | |
CN112613275A (zh) | 单据生成方法、装置、计算机设备和存储介质 | |
CN112527416A (zh) | 任务处理方法、装置、计算机设备和存储介质 | |
CN111385661B (zh) | 语音控制全屏播放的方法、装置、终端及存储介质 | |
CN114879985B (zh) | 一种证书文件的安装方法、装置、设备及存储介质 | |
CN113076728A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |