CN114817004A - 测试用例生成方法、装置、设备及可读存储介质 - Google Patents
测试用例生成方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN114817004A CN114817004A CN202210358973.7A CN202210358973A CN114817004A CN 114817004 A CN114817004 A CN 114817004A CN 202210358973 A CN202210358973 A CN 202210358973A CN 114817004 A CN114817004 A CN 114817004A
- Authority
- CN
- China
- Prior art keywords
- test
- test case
- requirement
- keyword
- test requirement
- 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 585
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000012795 verification Methods 0.000 claims description 34
- 230000004044 response Effects 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 2
- 235000013361 beverage Nutrition 0.000 description 22
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 238000012546 transfer Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
图1为本申请实施例提供的应用场景的示意图。请参见图1,可以根据目标对象的应用场景编写测试用例,并且可以将测试用例输入目标对象中,以使目标对象执行测试用例,得到测试结果,进而可以根据测试结果确定目标对象是否具备预期功能。
其中,目标对象可以是能够执行程序语言的待测产品。目标对象可以为硬件设备或者软件。例如,若目标对象为硬件设备,则目标对象可以为饮料自动售卖机,银行自助取款机等;若目标对象为软件,则目标对象可以为购物软件、网站等。
在相关技术中,通常由工作人员根据经验,手动编写测试用例,并通过文档记录和管理。然而,在上述过程中,无法重复利用测试用例,且工作人员手动编写花费的时间较长,导致测试用例的生成效率低。
在本申请实施例中,计算机设备可以获取目标对象对应的第一测试需求,并提取第一关键词。计算机设备可以根据第一关键词,在预设数据库中确定待选测试用例,进而确定目标测试用例。由于计算机设备在确定目标测试用例时,可以通过多条件贪婪算法确定待选测试用例,并且可以对待选测试用例进行修改和更新,使得待选测试用例可以被重复利用,并且减少了工作人员手动编写的工作量。因此,通过上述方式,可以提高测试用例的生成效率。
下面,通过具体实施例对本申请所示的技术方案进行详细说明。需要说明的是,下面几个实施例可以单独存在,也可以相互结合,对于相同或相似的内容,在不同的实施例中不再重复说明。
图2为本申请实施例提供的一种测试用例生成方法的流程示意图。请参见图2,该方法可以包括:
S201、获取目标对象对应的第一测试需求。
本申请实施例的执行主体可以为计算机设备,也可以为设置在计算机设备中测试用例生成装置。测试用例生成装置可以通过软件实现,也可以通过软件和硬件的结合实现。测试用例生成装置可以为计算机设备中的处理器。为了便于理解,在下文中,以执行主体为计算机设备为例进行说明。
第一测试需求可以是根据目标对象的功能确定的。一个目标对象可以对应多个第一测试需求。例如,若目标对象为某银行转账系统,需具备对公转账和对私转账的功能,则第一测试需求可以为测试对公转账流程、测试对私转账流程等。
工作人员可以将目标对象和第一测试需求输入计算机设备,以使计算机设备获取目标对象、及目标对象对应的第一测试需求。
S202、在第一测试需求中提取第一关键词。
计算机设备获取第一测试需求之后,可以通过算法在第一测试需求中提取第一关键词。第一关键词可以为一个或者多个。例如,若第一测试需求为测试对公转账流程,则计算机设备可以在“测试对公转账流程”中提取出3个第一关键词,分别为“对公”、“转账”和“流程”。
S203、根据第一关键词,在预设数据库中确定待选测试用例。
预设数据库中可以包括多个测试需求和每个测试需求对应的测试用例。对于任意一个测试需求,测试需求可以对应一个或者多个测试用例。
测试用例可以是通过计算机设备编写的程序语言。测试用例的内容可以包括输入信息、测试步骤和输出结果等。例如,测试用例-1是用于对某银行转账系统的测试,则测试用例-1的输入信息可以为用户卡号、数字密码,测试步骤可以包括选择转账、输入金额、填写收款人名称和卡号、确认转账等,输出结果可以为转账成功、转账失败等。
在一可选实施例中,计算机设备可以在预设数据库中确定测试需求集合,并根据第一关键词,在测试需求集合中确定至少一个待选测试需求,进而根据至少一个待选测试需求,确定至少一个待选测试用例。
其中,测试需求集合中可以包括一个或者多个测试需求。测试需求中可以包括待选测试需求,待选测试需求与第一测试需求的相似度大于或者等于第一预设阈值。待选测试需求可以对应一个或者多个待选测试用例。
第一预设阈值可以由工作人员预先设置。例如,第一预设阈值可以为90%,表示待选测试需求与第一测试需求的相似度需大于或者等于90%。
例如,计算机设备可以在预设数据库中确定测试需求集合A中包括3个测试需求,分别为测试需求-1、测试需求-2、测试需求-3。第一预设阈值为90%。其中,测试需求-1、测试需求-2、测试需求-3与第一测试需求的相似度分别为80%、88%、92%,则可以将测试需求-2确定为待选测试需求,测试需求-2可以对应4个测试用例,分别为测试用例-1、测试用例-2、测试用例-3、测试用例-4。
S204、根据待选测试用例和第一测试需求,确定第一测试需求对应的目标测试用例。
计算机设备可以根据第一测试需求中的第一关键词,对待选测试用例中进行修改和更新,以确定第一测试需求对应的目标测试用例。目标测试用例可以用于对目标对象进行测试。
在本申请实施例中,计算机设备可以获取目标对象对应的第一测试需求,并提取第一关键词。计算机设备可以根据第一对象类别在预设数据库中确定测试需求集合,并在测试需求集合中确定至少一个待选测试需求,进而确定至少一个待选测试用例。计算机设备可以根据第一关键词对待选测试用例进行修改和更新,确定第一测试需求对应的目标测试用例。由于计算机设备在确定目标测试用例时,可以通过多条件贪婪算法对待选测试用例进行识别和管理,并且可以对待选测试用例进行修改和更新,使得待选测试用例可以被重复利用,减少了工作人员手动编写的工作量。因此,提高了测试用例的生成效率。
在图2所示实施例的基础上,下面,结合图3,对上述测试用例生成进行进一步详细说明。图3为本申请实施例提供的另一种测试用例生成方法的流程示意图。请参见图3,该方法可以包括:
S301、获取目标对象对应的第一测试需求。
需要说明的是,步骤S301的执行过程可以参考步骤S201的执行过程,在此不再进行赘述。
S302、在第一测试需求中提取第一关键词。
需要说明的是,步骤S302的执行过程可以参考步骤S202的执行过程,在此不再进行赘述。
S303、在预设数据库中确定测试需求集合。
在一可选实施例中,计算机设备可以获取目标对象的第一对象类别;获取预设数据库中各测试需求对应的对象类别;根据第一对象类别和预设数据库中各测试需求对应的对象类别,在预设数据库中确定测试需求集合。测试需求集合中各测试需求对应的对象类别与第一对象类别相同。
其中,对象类别可以根据目标对象确定。例如,若目标对象为某银行转账系统,则对象类别可以为银行。
例如,若计算机设备获取目标对象的第一对象类别为银行,则计算机设备可以根据“银行”在预设数据库中找出对象类别为银行的一个或者多个测试需求,可以将该一个或者多个测试需求作为测试需求集合。
S304、根据第一关键词,在测试需求集合中确定至少一个待选测试需求。
可以通过如下方式,根据第一关键词,在测试需求集合中确定至少一个待选测试需求:获取测试需求集合中的每个测试需求对应的关键词;根据第一关键词和测试需求集合中每个测试需求对应的关键词,确定第一测试需求与测试需求集合中每个测试需求之间的相似度。根据第一测试需求与测试需求集合中每个测试需求之间的相似度,在至少测试需求集合中确定至少一个待选测试需求,待选测试需求与第一测试需求的相似度大于或等于第一预设阈值。
例如,若计算机设备确定测试需求集合中包括测试需求-1、测试需求-2、测试需求-3,则计算机设备可以获取测试需求-1对应的关键词为银行1、对私、转账、流程,测试需求-2对应的关键词为银行1、对公、转账、流程,测试需求-3对应的关键词为银行2、对私、贷款、流程;若计算机设备可以确定第一测试需求中第一关键词包括银行3、对公、转账、流程,则计算机设备可以确定第一测试需求与测试需求-1的相似度为50%、与测试需求-2的相似度为75%、与测试需求-3的相似度为25%;若设定第一预设阈值为70%,则可以将测试需求-2确定为待选测试需求。
S305、根据至少一个待选测试需求,确定至少一个待选测试用例。
由于预设数据库中的测试需求和测试用例具有对应关系,一个测试需求可以对应一个或者多个测试用例,则计算机设备确定至少一个待选测试需求之后,可以根据至少一个待选测试需求,确定对应的至少一个待选测试用例。
例如,若计算机设备确定待选测试需求为测试需求-2,预设数据库中保存有测试需求-2、及测试需求-2对应的4个测试用例,且分别为测试用例-1、测试用例-2、测试用例-3、测试用例-4,则计算机设备可以将该4个测试用例中的任意一个确定为待选测试用例。可选的,计算机设备也可以将该4个测试用例确定为4个待选测试用例。
S306、根据待选测试用例和第一测试需求,确定第一测试需求对应的目标测试用例。
计算机设备确定待选测试用例之后,则可以通过算法提取待选测试用例中的第二关键词。计算机设备可以根据第一关键词,修改和更新待选测试用例中的第二关键词,从而确定第一测试需求对应的目标测试用例。目标测试用例用于对目标对象进行测试。
在本申请实施例中,计算机设备可以获取目标对象对应的第一测试需求,并提取第一关键词。计算机设备可以根据第一对象类别在预设数据库中确定测试需求集合,并根据第一关键词在测试需求集合中确定至少一个待选测试需求,进而确定至少一个待选测试用例。计算机设备可以根据第一关键词对待选测试用例中的第二关键词进行修改和更新,确定第一测试需求对应的目标测试用例。由于计算机设备在确定目标测试用例时,可以通过多条件贪婪算法对待选测试用例进行识别和管理,并且可以对待选测试用例进行修改和更新,使得待选测试用例可以被重复利用,减少了工作人员手动编写的工作量。因此,提高了测试用例的生成效率。
下面,在上述任意一个实施例的基础上,结合图4,通过具体示例对上述测试用例生成方法进行进一步的详细说明。
图4为本申请实施例提供的一种测试用例生成的过程示意图,请参见图4,计算机设备可以获取目标对象的第一对象类别和第一测试需求,并在第一测试需求中提取出第一关键词。若第一对象类别为售卖机,第一测试需求为测试饮料售卖机的购买流程,则计算机设备可以在“测试饮料售卖机的购买流程”中提取多个第一关键词,可以分别为“饮料”、“售卖机”、“购买”、“流程”。
若预设数据库中包括测试需求-1、测试需求-2、测试需求-3、测试需求-4、……、测试需求-n、以及各个测试需求对应的一个或者多个测试用例。例如,测试需求-1中可以对应一个测试用例,为测试用例1-1;测试需求-2可以对应3个测试用例,分别为测试用例2-1、测试用例2-2、测试用例2-3;测试需求-3可以对应2个测试用例,分别为测试用例3-1、测试用例3-2;测试需求-4中可以对应一个测试用例,为测试用例4-1;……;测试需求-n可以对应m个测试用例,分别为测试用例n-1、测试用例n-m。计算机设备可以根据获取各个测试需求对应的对象类别,若计算机设备获取测试需求-2、测试需求-3、测试需求-4对应的对象类别为售卖机,则计算机设备根据第一对象类别“售卖机”在预设数据库中将测试需求-2、测试需求-3、测试需求-4确定为测试需求集合A。
计算机设备可以获取测试需求集合A中每个测试需求对应的关键词,例如,若测试需求-2对应的关键词为“玩具”、“售卖机”、“购买”、“流程”测试需求-3对应的关键词为“玩具”、“售卖机”、“退款”、“流程”,测试需求-4对应的关键词为“玩具”、“售卖机”、“选择”、“方式”,计算机设备可以根据第一关键词“饮料”“售卖机”“购买”“流程”和各个测试需求对应的关键词,确定第一测试需求与测试需求-2、测试需求-3、测试需求-4之间的相似度分别为75%、50%、25%,若设定第一预设阈值为75%,则计算机设备可以在测试需求集合中,将测试需求-2确定为待选测试需求,进而可以将测试需求-2对应的测试用例2-1、测试用例2-2、测试用例2-3中的任意一个确认为待选测试用例,或者也可以将该3个测试用例确定为3个待选测试用例。
计算机设备可以确定每个测试用例中的第二关键词,然后根据第一关键词对每个测试用例中的第二关键词进行修改和更新,以得到目标测试用例。例如,若测试用例2-1中的第二关键词中包括“玩具a”、“玩具b”、“玩具c”,则计算机设备可以根据第一关键词“饮料”,替换将第二关键词中的“玩具”,以使符合第一测试需求对应的目标测试用例,则目标测试用例中的关键词可以为“饮料a”、“饮料b”、“饮料c”,该目标测试用例可以用于对目标对象进行测试。
在本申请实施例中,计算机设备可以获取目标对象对应的第一对象类别和第一测试需求,并提取第一关键词。计算机设备可以根据第一对象类别在预设数据库中确定测试需求集合,并根据第一关键词在测试需求集合中确定至少一个待选测试需求,进而确定至少一个待选测试用例。计算机设备可以根据第一关键词对待选测试用例中的第二关键词进行修改和更新,确定第一测试需求对应的目标测试用例。由于计算机设备在确定目标测试用例时,可以通过多条件贪婪算法对待选测试用例进行识别和管理,并且可以对待选测试用例进行修改和更新,使得待选测试用例可以被重复利用,减少了工作人员手动编写的工作量。因此,提高了测试用例的生成效率。
计算机设备确定第一测试需求对应的目标测试用例之后,还可以对目标测试用例进行判定,以确定目标测试用例可用或者不可用。下面,结合图5,对目标测试用例的判定方法进行说明。
图5为本申请实施例提供的一种目标测试用例判定方法的流程示意图。
请参见图5,该方法可以包括:
S501、获取目标测试用例中的第三关键词。
计算机设备生成目标测试用例之后,可以在目标测试用例中确定第三关键词,第三关键词中可以包括输入信息、输出结果等。第三关键词可以包括第一关键词,其数量大于第一关键词的数量。例如,若第一关键词为3个,分别为“饮料”、“购买”、“流程”,则第三关键词可以包括9个,分别为“饮料”、“购买”、“流程”、“饮料a”、“饮料b”、“输入金额X元”、“找零X元”、“购买失败”、“购买成功”等。
S502、获取目标对象对应的关键词集合。
计算机设备可以获取目标对象的产品需求书,并在产品需求书中提取关键词,确定目标对象对应的关键词集合。关键词集合中可以包括第一关键词,关键词集合中关键词的数量大于第一关键词的数量;
例如,目标对象对应的关键词集合1中可以包括“饮料”、“售卖机”“购买”、“流程”、“饮料a”、“饮料b”、“输入金额X元”、“找零X元”、“输入金额不足”、“购买失败”、“购买成功”等。
S503、根据目标测试用例中的第三关键词和目标对象对应的关键词集合,确定第三关键词和关键词集合之间的匹配度。
计算机设备获取目标测试用例中的第三关键词和目标对象对应的关键词集合,则可以确定第三关键词和关键词集合之间的匹配度。例如,若第三关键词可以包括9个,分别为“饮料”、“购买”、“流程”、“饮料a”、“饮料b”、“输入金额X元”、“找零X元”、“购买失败”、“购买成功”等;目标对象对应的关键词集合1中可以包括“饮料”、“售卖机”“购买”、“流程”、“饮料a”、“饮料b”、“输入金额X元”、“找零X元”、“输入金额不足”、“购买失败”、“购买成功”等,则计算机设备可以确定第三关键词与关键词集合之间的匹配度为81.8%。
S504、根据匹配度,确定目标测试用例的验证结果。
验证结果用于指示目标测试用例可用或者不可用。
可以通过如下方式确定目标测试用例的验证结果:若匹配度大于或等于第二预设阈值,则计算机设备可以响应于该匹配度,确定目标测试用例的验证结果为可用并显示;若匹配度小于第二预设阈值,则计算机设备可以响应于该匹配度,确定目标测试用例的验证结果为不可用,并显示该匹配度和验证结果。若显示目标测试用例的验证结果为不可用,则可以对该目标测试用例进行人为修改,以得到更完善的目标测试用例。
第二预设阈值可以由工作人员预先设置。例如,第二预设阈值可以为80%,则表示可以根据匹配度是否大于或者等于80%,确定目标测试用例的验证结果。
例如,若设定第二预设阈值80%,计算机设备可以确定目标测试用例-1对应的第三关键词、与目标对象-1对应的关键词集合1之间的匹配度为81.8%,则匹配度为81.8%大于第二预设阈值80%,则计算机设备可以确定目标测试用例-1的验证结果为可用,并且可以显示该验证结果。则可以用目标测试用例-1对目标对象-1进行测试。
若计算机设备可以确定目标测试用例-2对应的第三关键词、与目标对象-1对应的关键词集合1之间的匹配度为75.6%,则匹配度为75.6%大于第二预设阈值80%,则计算机设备可以确定目标测试用例-2的验证结果为不可用,并且可以显示“该目标测试用例的匹配度为75.6%,该验证结果为不可用”。则可以对目标测试用例-2进行人为修改,以得到更完善的目标测试用例-2,再通过更完善的目标测试用例-2对目标对象-1进行测试。
在本申请实施例中,计算机设备可以获取目标测试用例中的第三关键词,和目标对象对应的关键词集合,并确定第三关键词和关键词集合之间的匹配度,进而可以根据匹配度,确定目标测试用例的验证结果。若匹配度大于或等于第二预设阈值,则计算机设备可以响应于该匹配度,确定目标测试用例的验证结果为可用并显示;若匹配度小于第二预设阈值,则计算机设备可以响应于该匹配度,确定目标测试用例的验证结果为不可用并显示。若显示目标测试用例的验证结果为不可用,则可以对该目标测试用例进行人为修改,以得到更完善的目标测试用例。由于计算机设备可以确定目标测试用例和目标对象之间的匹配度,并根据匹配度确定目标测试用例是否可用,减少了工作人员人为检查的工作量。因此,提高了测试用例的生成效率。
图6为本申请实施例提供的一种测试用例生成装置的结构示意图,请参见图6,该测试用例生成装置10可以包括:第一获取模块11、提取模块12、第一确定模块13和第二确定模块14,其中,
所述第一获取模块11用于,获取目标对象对应的第一测试需求;
所述提取模块12用于,在所述第一测试需求中提取第一关键词;
所述第一确定模块13用于,根据所述第一关键词,在预设数据库中确定待选测试用例;
所述第二确定模块14用于,根据所述待选测试用例和所述第一测试需求,确定所述第一测试需求对应的目标测试用例,所述目标测试用例用于对所述目标对象进行测试。
本申请实施例提供的测试用例生成装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在一种可能的实施方式中,所述第一确定模块13具体用于:
在所述预设数据库中确定测试需求集合;
根据所述第一关键词,在所述测试需求集合中确定至少一个待选测试需求;
根据所述至少一个待选测试需求,确定所述至少一个待选测试用例。
在一种可能的实施方式中,所述第一确定模块13具体用于:
获取所述目标对象的第一对象类别;
获取所述预设数据库中各测试需求对应的对象类别;
根据所述第一对象类别和所述预设数据库中各测试需求对应的对象类别,在所述预设数据库中确定测试需求集合,所述测试需求集合中各测试需求对应的对象类别与所述第一对象类别相同。
在一种可能的实施方式中,所述第一确定模块13具体用于:
获取所述测试需求集合中的每个测试需求对应的关键词;
根据所述第一关键词和所述测试需求集合中每个测试需求对应的关键词,确定所述第一测试需求与所述测试需求集合中每个测试需求之间的相似度;
根据所述第一测试需求与所述测试需求集合中每个测试需求之间的相似度,在所述至少测试需求集合中确定至少一个待选测试需求,所述待选测试需求与第一测试需求的相似度大于或等于第一预设阈值。
在一种可能的实施方式中,所述第二确定模块14具体用于:
在所述待选测试用例中确定第二关键词;
根据所述第一关键词,更新所述待选测试用例中的所述第二关键词,得到所述目标测试用例。
本申请实施例提供的测试用例生成装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
图7为本申请实施例提供的另一种测试用例生成装置的结构示意图,在图6所示实施例的基础上,测试用例生成装置还包括第二获取模块15、第三获取模块16、第三确定模块17和第四确定模型18,其中,
所述第二获取模块15用于,获取所述目标测试用例中的第三关键词,所述第三关键词的数量大于所述第一关键词的数量;
所述第三获取模块16用于,获取所述目标对象对应的关键词集合,所述关键词集合中的关键词数量大于所述第一关键词的数量;
所述第三确定模块17用于,根据所述目标测试用例中的第三关键词和所述目标对象对应的关键词集合,确定所述第三关键词和所述关键词集合之间的匹配度;
所述第四确定模块18用于,根据所述匹配度,确定所述目标测试用例的验证结果,所述验证结果用于指示所述目标测试用例可用或者不可用。
本申请实施例提供的测试用例生成装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在一种可能的实施方式中,所述第四确定模块18具体用于:
响应于所述匹配度大于或等于第二预设阈值,则确定所述目标测试用例的验证结果为可用;
响应于所述匹配度小于第二预设阈值,则确定所述目标测试用例的验证结果为不可用。
本申请实施例提供的测试用例生成装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
本申请实施例提供一种计算机设备的结构示意图,请参见图8,该计算机设备20可以包括处理器21和存储器22。示例性地,处理器21、存储器22,各部分之间通过总线23相互连接。
所述存储器22存储计算机执行指令;
所述处理器21执行所述存储器22存储的计算机执行指令,使得所述处理器21执行如上述方法实施例所示的测试用例生成方法。
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppydisk)、光盘(英文:optical disc)及其任意组合。
本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被处理器执行时用于实现上述方法实施例所述的测试用例生成方法。
本申请实施例还可提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,可实现上述方法实施例所示的测试用例生成方法。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
Claims (10)
1.一种测试用例生成方法,其特征在于,包括:
获取目标对象对应的第一测试需求;
在所述第一测试需求中提取第一关键词;
根据所述第一关键词,在预设数据库中确定待选测试用例;
根据所述待选测试用例和所述第一测试需求,确定所述第一测试需求对应的目标测试用例,所述目标测试用例用于对所述目标对象进行测试。
2.根据权利要求1所述的方法,其特征在于,根据所述第一关键词,在预设数据库中确定待选测试用例,包括:
在所述预设数据库中确定测试需求集合;
根据所述第一关键词,在所述测试需求集合中确定至少一个待选测试需求;
根据所述至少一个待选测试需求,确定所述至少一个待选测试用例。
3.根据权利要求2所述的方法,其特征在于,在所述预设数据库中确定测试需求集合,包括:
获取所述目标对象的第一对象类别;
获取所述预设数据库中各测试需求对应的对象类别;
根据所述第一对象类别和所述预设数据库中各测试需求对应的对象类别,在所述预设数据库中确定测试需求集合,所述测试需求集合中各测试需求对应的对象类别与所述第一对象类别相同。
4.根据权利要求2所述的方法,其特征在于,根据所述第一关键词,在所述测试需求集合中确定至少一个待选测试需求;包括:
获取所述测试需求集合中的每个测试需求对应的关键词;
根据所述第一关键词和所述测试需求集合中每个测试需求对应的关键词,确定所述第一测试需求与所述测试需求集合中每个测试需求之间的相似度;
根据所述第一测试需求与所述测试需求集合中每个测试需求之间的相似度,在所述至少测试需求集合中确定至少一个待选测试需求,所述待选测试需求与第一测试需求的相似度大于或等于第一预设阈值。
5.根据权利要求1-4任一项所述的方法,其特征在于,根据所述待选测试用例和所述第一测试需求,确定所述第一测试需求对应的目标测试用例,包括:
在所述待选测试用例中确定第二关键词;
根据所述第一关键词,更新所述待选测试用例中的所述第二关键词,得到所述目标测试用例。
6.根据权利要求1所述的方法,其特征在于,根据所述待选测试用例和所述第一测试需求,确定所述第一测试需求对应的目标测试用例之后,还包括:
获取所述目标测试用例中的第三关键词,所述第三关键词的数量大于所述第一关键词的数量;
获取所述目标对象对应的关键词集合,所述关键词集合中的关键词数量大于所述第一关键词的数量;
根据所述目标测试用例中的第三关键词和所述目标对象对应的关键词集合,确定所述第三关键词和所述关键词集合之间的匹配度;
根据所述匹配度,确定所述目标测试用例的验证结果,所述验证结果用于指示所述目标测试用例可用或者不可用。
7.根据权利要求6所述的方法,其特征在于,根据所述匹配度,确定所述目标测试用例的验证结果,包括:
响应于所述匹配度大于或等于第二预设阈值,则确定所述目标测试用例的验证结果为可用;
响应于所述匹配度小于第二预设阈值,则确定所述目标测试用例的验证结果为不可用。
8.一种测试用例生成装置,其特征在于,包括:第一获取模块、提取模块、第一确定模块和第二确定模块,其中,
所述第一获取模块用于,获取目标对象对应的第一测试需求;
所述提取模块用于,在所述第一测试需求中提取第一关键词;
所述第一确定模块用于,根据所述第一关键词,在预设数据库中确定待选测试用例;
所述第二确定模块用于,根据所述待选测试用例和所述第一测试需求,确定所述第一测试需求对应的目标测试用例,所述目标测试用例用于对所述目标对象进行测试。
9.一种计算机设备,其特征在于,包括:处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如权利要求1至7任一项所述的测试用例生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被处理器执行时用于实现权利要求1至7任一项所述的测试用例生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210358973.7A CN114817004B (zh) | 2022-04-07 | 2022-04-07 | 测试用例生成方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210358973.7A CN114817004B (zh) | 2022-04-07 | 2022-04-07 | 测试用例生成方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114817004A true CN114817004A (zh) | 2022-07-29 |
CN114817004B CN114817004B (zh) | 2024-05-17 |
Family
ID=82535143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210358973.7A Active CN114817004B (zh) | 2022-04-07 | 2022-04-07 | 测试用例生成方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114817004B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541736A (zh) * | 2011-11-30 | 2012-07-04 | 北京航空航天大学 | 一种软件可靠性执行过程加速测试方法 |
CN104391790A (zh) * | 2014-11-21 | 2015-03-04 | 浪潮电子信息产业股份有限公司 | 一种基于贪心算法的自动化测试用例选择方法 |
CN109783346A (zh) * | 2018-12-05 | 2019-05-21 | 深圳怡化电脑股份有限公司 | 基于关键字驱动的自动化测试方法、装置及终端设备 |
CN111176996A (zh) * | 2019-12-25 | 2020-05-19 | 平安普惠企业管理有限公司 | 测试用例生成方法、装置、计算机设备及存储介质 |
CN112328488A (zh) * | 2020-11-09 | 2021-02-05 | 深圳证券通信有限公司 | 一种ui自动化测试的控件对象识别方法 |
CN112685324A (zh) * | 2021-01-21 | 2021-04-20 | 三一重工股份有限公司 | 一种生成测试方案的方法及系统 |
CN113687826A (zh) * | 2021-08-10 | 2021-11-23 | 中国人民解放军陆军工程大学 | 一种基于需求项提取的测试用例复用系统及方法 |
CN113778864A (zh) * | 2021-08-23 | 2021-12-10 | 北京金山云网络技术有限公司 | 一种测试用例的生成方法和装置、电子设备和存储介质 |
CN114238135A (zh) * | 2021-12-22 | 2022-03-25 | 北京金山云网络技术有限公司 | 测试用例确定方法、装置及电子设备 |
-
2022
- 2022-04-07 CN CN202210358973.7A patent/CN114817004B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541736A (zh) * | 2011-11-30 | 2012-07-04 | 北京航空航天大学 | 一种软件可靠性执行过程加速测试方法 |
CN104391790A (zh) * | 2014-11-21 | 2015-03-04 | 浪潮电子信息产业股份有限公司 | 一种基于贪心算法的自动化测试用例选择方法 |
CN109783346A (zh) * | 2018-12-05 | 2019-05-21 | 深圳怡化电脑股份有限公司 | 基于关键字驱动的自动化测试方法、装置及终端设备 |
CN111176996A (zh) * | 2019-12-25 | 2020-05-19 | 平安普惠企业管理有限公司 | 测试用例生成方法、装置、计算机设备及存储介质 |
CN112328488A (zh) * | 2020-11-09 | 2021-02-05 | 深圳证券通信有限公司 | 一种ui自动化测试的控件对象识别方法 |
CN112685324A (zh) * | 2021-01-21 | 2021-04-20 | 三一重工股份有限公司 | 一种生成测试方案的方法及系统 |
CN113687826A (zh) * | 2021-08-10 | 2021-11-23 | 中国人民解放军陆军工程大学 | 一种基于需求项提取的测试用例复用系统及方法 |
CN113778864A (zh) * | 2021-08-23 | 2021-12-10 | 北京金山云网络技术有限公司 | 一种测试用例的生成方法和装置、电子设备和存储介质 |
CN114238135A (zh) * | 2021-12-22 | 2022-03-25 | 北京金山云网络技术有限公司 | 测试用例确定方法、装置及电子设备 |
Non-Patent Citations (3)
Title |
---|
PHU X. MAI: ""MCP: A Security Testing Tool Driven by Requirements"", 《2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: COMPANION PROCEEDINGS(ICSE-COMPANION)》, 19 August 2019 (2019-08-19), pages 55 - 58 * |
张民: ""软件测试用例自动生成系统的设计与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2014, 15 May 2014 (2014-05-15), pages 138 - 984 * |
顾翔: ""基于测试目标相似性实现依赖意识的测试用例推荐"", Retrieved from the Internet <URL:《https://cloud.tencent.com/developer/article/1818126》> * |
Also Published As
Publication number | Publication date |
---|---|
CN114817004B (zh) | 2024-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6629678B2 (ja) | 機械学習装置 | |
US10482170B2 (en) | User interface for contextual document recognition | |
US10387473B2 (en) | Real-time data input correction and facilitation of data entry at point of input | |
CN110795524B (zh) | 主数据映射处理方法、装置、计算机设备及存储介质 | |
US11816224B2 (en) | Assessing and managing computational risk involved with integrating third party computing functionality within a computing system | |
CN116303459A (zh) | 处理数据表的方法及系统 | |
US20230205755A1 (en) | Methods and systems for improved search for data loss prevention | |
CN114116441A (zh) | 一种ui界面测试方法、装置、电子设备及存储介质 | |
US20200143369A1 (en) | Device for contracting smart contract and method thereof | |
CN114511393A (zh) | 财务数据处理方法及系统 | |
CN115221037A (zh) | 一种交互页面的测试方法、装置、计算机设备和程序产品 | |
US10216988B2 (en) | Information processing device, information processing method, and computer program product | |
CN112560428A (zh) | 一种文本处理方法、装置、电子设备及存储介质 | |
EP3690772A1 (en) | Method and system for skill matching for determining skill similarity | |
CN114817004B (zh) | 测试用例生成方法、装置、设备及可读存储介质 | |
CN116302079A (zh) | 一种业务数据处理方法、装置、电子设备及存储介质 | |
CN111639903A (zh) | 一种针对架构变更的评审处理方法及相关设备 | |
US20200311192A1 (en) | Automated electronic form generation with context cues | |
CN110544166A (zh) | 样本生成方法、装置及存储介质 | |
CN116186223A (zh) | 一种金融文本处理方法、装置、设备和存储介质 | |
CN113312457B (zh) | 用于问题解决的方法、计算系统和计算机可读介质 | |
CN114546553A (zh) | 一种信息显示的方法、装置、设备及介质 | |
JP6960270B2 (ja) | 設計書学習装置および設計書学習方法 | |
CN111061924A (zh) | 词组提取方法、装置、设备和存储介质 | |
JP7354721B2 (ja) | 情報処理プログラム、情報処理方法および情報処理装置 |
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 |