CN114880242B - 测试用例的提取方法、装置、设备和介质 - Google Patents

测试用例的提取方法、装置、设备和介质 Download PDF

Info

Publication number
CN114880242B
CN114880242B CN202210646092.5A CN202210646092A CN114880242B CN 114880242 B CN114880242 B CN 114880242B CN 202210646092 A CN202210646092 A CN 202210646092A CN 114880242 B CN114880242 B CN 114880242B
Authority
CN
China
Prior art keywords
test
case
test case
data set
group
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
Application number
CN202210646092.5A
Other languages
English (en)
Other versions
CN114880242A (zh
Inventor
付胜伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202210646092.5A priority Critical patent/CN114880242B/zh
Publication of CN114880242A publication Critical patent/CN114880242A/zh
Application granted granted Critical
Publication of CN114880242B publication Critical patent/CN114880242B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test 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)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本公开提供了一种测试用例的提取方法、装置、设备、介质和程序产品,涉及计算机技术领域,尤其涉及测试用例管理和芯片技术。具体实现方案为:根据预先配置的测试用例配置表,生成测试用例数据集,其中,所述测试用例配置表用于记载测试用例及其参数;根据测试指令和所述测试用例数据集提取测试用例。本公开可以提高测试用例的提取效率。

Description

测试用例的提取方法、装置、设备和介质
技术领域
本公开涉及计算机技术领域,尤其涉及测试用例管理和芯片技术,具体涉及一种测试用例的提取方法、装置、设备、介质和程序产品。
背景技术
随着设计芯片规模的增加,芯片的验证工作显得尤为重要。在大规模芯片设计的验证工作中,工程师通常采用开发脚本的方式,用尽可能少的指令来代替复杂的仿真操作,大大提升工作效率。
随着验证规模的增加,验证用的测试用例case也随之增加。因此,如何对大量的case进行有效管理,对于提升验证工作的效率显得非常重要。
发明内容
本公开提供了一种测试用例的提取方法、装置、设备、介质和程序产品。
根据本公开的一方面,提供了一种测试用例的提取方法,包括:
根据预先配置的测试用例配置表,生成测试用例数据集,其中,所述测试用例配置表用于记载测试用例及其参数;
根据测试指令和所述测试用例数据集提取测试用例。
根据本公开的另一方面,提供了一种测试用例的提取装置,包括:
测试用例数据集生成模块,用于根据预先配置的测试用例配置表,生成测试用例数据集,其中,所述测试用例配置表用于记载测试用例及其参数;
测试用例提取模块,用于根据测试指令和所述测试用例数据集提取测试用例。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任意实施例所述的测试用例的提取方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行本公开任意实施例所述的测试用例的提取方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开任意实施例所述的测试用例的提取方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的一种测试用例的提取方法的示意图;
图2是根据本公开实施例的一种测试用例的提取方法的示意图;
图3是根据本公开实施例的一种测试用例的提取方法的示意图;
图4是根据本公开实施例的一种测试用例的提取方法的示意图;
图5是根据本公开实施例的一种测试用例的提取方法的示意图;
图6是根据本公开实施例的一种测试用例的提取方法的示意图;
图7是根据本公开实施例的一种测试用例的提取方法的示意图;
图8是根据本公开实施例的一种测试用例的提取方法的示意图;
图9是根据本公开实施例的一种测试用例的提取方法的示意图;
图10是根据本公开实施例的一种测试用例的提取装置的结构示意图;
图11是用来实现本公开实施例的一种测试用例的提取方法的示意图;方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例可适用于提取测试用例的情况,例如,在大量的芯片验证用测试用例中,高效地提取出当前想要的测试用例。涉及计算机技术领域,尤其涉及测试用例管理和芯片技术。该方法可由一种测试用例的提取装置来执行,该装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如计算机设备或服务器等。如图1所示,该方法具体包括如下:
S101、根据预先配置的测试用例配置表,生成测试用例数据集,其中,测试用例配置表用于记载测试用例及其参数。
其中,测试用例配置表可以以任意一种表格形式存在,用于记载测试用例及其参数。例如,测试用例配置表中的第一列记载每个测试用例的名称,后面每一列则从不同维度记载测试用例的各种参数信息。在不同的测试场景中,所需的测试用例的参数信息也不同,这些参数信息可以用来支持测试过程的顺利进行,实施时,可以根据测试场景来确定所需的参数即可,本公开实施例对此不作任何限定。
S102、根据测试指令和测试用例数据集提取测试用例。
由于测试用例配置表用于记载测试用例及其参数,因此,生成的测试用例数据集中则包括各测试用例及其参数。测试指令用于指示当前所需提取的测试用例所满足的条件,这些条件与测试用例及其参数有关,因此,根据测试指令就可以从测试用例数据集中提取测试用例。例如,当前测试指令指示对某参数的参数值为设定值的测试用例进行提取,那么可以在测试用例数据集中对该参数值进行索引,如果能够索引到该参数值,则将该参数值在测试用例数据集中对应的测试用例作为结果输出。
需要说明的是,现有技术中通常是将大量的测试用例存储为文本形式,而由于测试用例数量众多,这种文本形式的测试用例很难维护,而且容易出现混乱的情况,影响测试用例提取效率。而本公开实施例中,是将测试用例配置在测试用例配置表中,一方面,相比于文本形式的测试用例,任意形式的配置表都具有更加简洁、清晰的可视化效果,因此,便于工程师在测试用例配置表中进行编辑和查找,另一方面,在需要提取测试用例时,只需先根据配置表生成测试用例数据集,然后根据测试指令就可以从测试用例数据集中提取出想要的测试用例,相比于现有技术效率更高。此外,在需要更改或更新测试用例时,只需要对测试用例配置表进行更改或更新即可,更便于维护。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集,然后,就可以根据测试指令和测试用例数据集,提取出想要的测试用例。相比于现有技术,本公开实施例具有更高的测试用例提取效率,而且利用配置表的方式来管理测试用例,也更加方便、快捷,且便于后续维护。
图2是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上,对单一测试用例的提取过程,做出进一步地优化。如图2所示,该方法具体包括如下:
S201、扫描测试用例配置表中的每个测试用例及其参数,以测试用例的标识为键,以测试用例的至少一种描述信息为值,以字典形式生成测试用例数据集。
其中,测试用例数据集是以字典形式存储,通过测试用例配置表,获取每个测试用例的标识及其参数,以标识为键,以至少一种描述信息为值,生成测试用例数据集。标识例如可以是测试用例的名称,参数包括测试用例的标识和至少一种描述信息。
需要说明的是,为了准确提取测试用例,需要测试用例的标识具有唯一性,因此,提取测试用例之前,本公开实施例的方法,还包括:在测试用例数据集中,对各测试用例的标识进行去重操作。
S202、响应于测试指令表示对第一指定标识的测试用例进行提取,在测试用例数据集中对第一指定标识进行索引,并将索引得到的测试用例作为测试用例提取结果。
如果测试指令表示对第一指定标识的测试用例进行提取,说明当前是针对单一测试用例提取,也即,提取某一指定标识的测试用例。因此,在测试用例数据集中对第一指定标识进行索引,即以第一指定标识为key(键)进行索引,索引得到的测试用例即为测试用例提取结果。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集,该测试用例数据集是以字典形式存储,方便后面进行索引。如果测试指令表示对第一指定标识的测试用例进行提取,那么在测试用例数据集中以第一指定标识为key进行索引,即可得到提取结果。相比于现有技术,本公开实施例中对单一测试用例提取的效率更高,且便于实现。
图3是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上,对单一测试用例组的提取过程,做出进一步地优化。如图3所示,该方法具体包括如下:
S301、根据预先配置的测试用例配置表,生成测试用例数据集。
其中,测试用例配置表用于记载测试用例及其参数。测试用例数据集中包括测试用例及其参数。所述参数包括测试用例的标识和至少一种描述信息。所述描述信息包括测试用例所属的至少一个用例组的标识。每个测试用例可以对应至少一个用例组,每个用例组中包括多个测试用例。测试用例与用例组的对应关系,以及用例组的标识,均可由工程师根据需要进行配置。而通过配置用例组的信息,可以实现直接针对用例组的测试用例进行提取,从而提取出属于该用例组的所有测试用例,便于在复杂的测试场景下,例如芯片的验证环境下,灵活地进行测试用例提取,从而提高提取效率和验证效率。
在测试用例数据集以字典形式存储的基础上,由于测试用例的相关参数的维度较多,对于每个维度的参数,其本身也可以按字典形式进行存储,因此,整个测试用例数据集是一个嵌套的字典形式,以测试用例的标识为key,就能索引到该测试用例及其对应的各个参数信息,进一步地,以某一个参数名称为key,就能索引到该名称参数的具体参数值。其中,由于一个参数名称可能对应多个元素,因此,这些元素可以存储在列表(list)中,这些元素在list中是按照顺序排列,通过索引参数信息就可以索引到list。例如,用例组group对应的就是多个元素,即每个测试用例对应两个或两个以上group,因此,group标识就可以存储在list中。
S302、响应于测试指令表示对所属用例组的标识包括第二指定标识的测试用例进行提取,针对测试用例数据集,分别在每个测试用例所属的至少一个用例组中对第二指定标识进行索引。
S303、将每个测试用例所属的至少一个用例组中,存在标识为第二指定标识的用例组所对应的测试用例,作为测试用例提取结果。
如果测试指令表示对所属用例组的标识包括第二指定标识的测试用例进行提取,即为针对单一用例组的测试用例提取,也就是提取出标识为第二指定标识的用例组下所有的测试用例。那么,针对测试用例数据集,分别在每个测试用例所属的至少一个用例组中对第二指定标识进行索引,如果针对某测试用例的用例组的标识,索引到其存在第二指定标识,则将该测试用例提取到当前的结果数据集中。由此,将每个测试用例所属的至少一个用例组中,存在标识为第二指定标识的用例组所对应的测试用例,均提取到当前的结果数据集中,该结果数据集即为当前的测试用例提取结果。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集。参数信息中包括测试用例所属的用例组的标识,因此,当测试指令表示对所属用例组的标识包括第二指定标识的测试用例进行提取时,在测试用例数据集中以第二指定标识为key进行索引,即可得到所有属于第二指定标识用例组的测试用例,实现对单一用例组的全部测试用例的提取。相比于现有技术,可以更加灵活地提取用例组的测试用例,使得提取效率更高,且便于实现。
图4是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上,对多个用例组中测试用例交叉提取的过程,做出进一步地优化。如图4所示,该方法具体包括如下:
S401、根据预先配置的测试用例配置表,生成测试用例数据集。
其中,测试用例配置表用于记载测试用例及其参数。测试用例数据集中包括测试用例及其参数。所述参数包括测试用例的标识和至少一种描述信息。所述描述信息包括测试用例所属的至少一个用例组的标识。
S402、在测试用例数据集中,对出现的每个用例组的标识逐一进行索引。
S403、将每个用例组对应的测试用例打包,分别生成每个用例组对应的用例子集。
测试用例数据集是以测试用例的标识为key的字典形式的数据集,为了实现多个用例组中测试用例的交叉提取,本公开实施例在测试用例数据集中,对出现的每个用例组的标识逐一进行索引,也就是将所有出现的用例组(group)按照其中单个用例组的形式进行索引,得到单个用例组对应的测试用例,并分别进行打包,得到每个用例组对应的用例子集。
S404、如果测试指令表示对满足第一条件的测试用例进行提取,所述第一条件为:所属用例组的标识包括多个不同的第三指定标识中的任意之一,则将多个第三指定标识中,每个第三指定标识的用例组对应的用例子集求并集,得到第一数据集合,并将第一数据集合作为测试用例提取结果。
测试指令中含有当前对测试用例的提取需求信息,对测试指令进行解析,如果测试指令表示提取的测试用例满足如下需求:所属用例组的标识包括多个不同的第三指定标识中的任意之一,则执行S405。其中,所属用例组的标识包括多个不同的第三指定标识中的任意之一,意思是,若某测试用例所属用例组的标识中只要包括多个不同的第三指定标识中的任意一个,那么该测试用例就是当前要提取的测试用例。
例如,在一种实施方式中,多个不同的第三指定标识包括两个第三指定标识,分别为标识A和标识B,测试指令表示要提取的测试用例满足其所属用例组的标识包括标识A和标识B中的任意之一。那么,将标识A的用例组对应的用例子集,与标识B的用例组对应的用例子集求并集,即可得到提取结果。
在另一种实施方式中,如果多个不同的第三指令表示包括三个第三指定标识,分别为标识A、标识B和标识C,那么同理,将这三个标识的用例组各自对应的用例子集求并集,即可得到提取结果。
在S405中,通过将多个不同的指定标识的用例组对应的用例子集求并集,就可以得到第一数据集合。该第一数据集合中的测试用例,其所属的用例组的标识包括多个不同的指定标识的任意之一。由此,通过直接将用例子集求并集的方式,就可以直接提取出满足上述条件的测试用例集合,实现了多个用例组之间的测试用例的交叉提取,提高了测试用例的提取效率。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集。然后,在测试用例数据集中以单个用例组的标识进行索引,得到每个用例组对应的用例子集。由此,当测试指令表示对所属用例组的标识包括多个不同的指定标识中的任意之一的测试用例进行提取时,只需要对各指定标识的用例组对应的用例子集求并集,即可得到提取结果。相比于现有技术,可以更加灵活地在多个用例组之间进行测试用例的交叉提取,使得提取效率更高,且便于实现。
图5是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上,对多个用例组中测试用例交叉提取的过程,做出进一步地优化。如图5所示,该方法具体包括如下:
S501、根据预先配置的测试用例配置表,生成测试用例数据集。
其中,测试用例配置表用于记载测试用例及其参数。测试用例数据集中包括测试用例及其参数。所述参数包括测试用例的标识和至少一种描述信息。所述描述信息包括测试用例所属的至少一个用例组的标识。
S502、在测试用例数据集中,对出现的每个用例组的标识逐一进行索引。
S503、将每个用例组对应的测试用例打包,分别生成每个用例组对应的用例子集。
S504、如果测试指令表示对满足第二条件的测试用例进行提取,所述第二条件为:所属用例组的标识同时包括多个不同的第四指定标识,则在多个不同的第四指定标识的用例组各自对应的用例子集之间求交集,得到第二数据集合,并将第二数据集合作为测试用例提取结果。
在本实施例中,实现的多个用例组中测试用例的交叉提取情形,是指当前想要提取的测试用例符合其所属用例组的标识同时包括多个不同的第四指定标识。因此,在多个不同的第四指定标识的用例组各自对应的用例子集之间求交集,得到第二数据集合,该第二数据集合即为测试用例提取结果。
例如,在一种实施方式中,多个不同的第四指定标识包括两个第四指定标识,分别为标识C和标识D,测试指令表示要提取的测试用例满足其所属用例组的标识同时包括标识C和标识D。那么,将标识C的用例组对应的用例子集,与标识D的用例组对应的用例子集求交集,即可得到其所属用例组的标识同时包括标识C和标识D的测试用例提取结果。
在另一种实施方式中,如果多个不同的第四指定标识包括三个第四指定标识,分别为标识C、标识D和标识E,那么同理,将这三个标识的用例组各自对应的用例子集求交集,即可得到提取结果。具体实施时,可以先对标识C与标识D的用例组的用例子集求交集,然后再将得到的结果与标识E的用例组的用例子集求交集,即可得到最终提取结果。本公开实施例对求交集的执行顺序不做任何限定。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集。然后,在测试用例数据集中以单个用例组的标识进行索引,得到每个用例组对应的用例子集。由此,当测试指令表示对所属用例组的标识同时包括多个不同的第四指定标识的测试用例进行提取时,只需要对在每个第四指定标识的用例组的用例子集之间求交集,即可得到提取结果。相比于现有技术,可以更加灵活地在多个用例组之间进行测试用例的交叉提取,使得提取效率更高,且便于实现。
图6是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上,对多个用例组中测试用例交叉提取的过程,做出进一步地优化。如图6所示,该方法具体包括如下:
S601、根据预先配置的测试用例配置表,生成测试用例数据集。
其中,测试用例配置表用于记载测试用例及其参数。测试用例数据集中包括测试用例及其参数。所述参数包括测试用例的标识和至少一种描述信息。所述描述信息包括测试用例所属的至少一个用例组的标识。
S602、在测试用例数据集中,对出现的每个用例组的标识逐一进行索引。
S603、将每个用例组对应的测试用例打包,分别生成每个用例组对应的用例子集。
S604、如果测试指令表示对满足第三条件的测试用例进行提取,所述第三条件为:所属用例组的标识包括第五指定标识,但不包括第六指定标识,则将第五指定标识的用例组对应的用例子集,与第六指定标识的用例组对应的用例子集求交集,得到第三数据集合。
S605、将第五指定标识的用例组对应的用例子集减去第三数据集合,得到第四数据集合,并将第四数据集合作为测试用例提取结果。
在本实施例中,实现的多个用例组中测试用例的交叉提取情形,是指当前想要提取的测试用例符合其所属用例组的标识包括第五指定标识,但不包括第六指定标识。因此,先将第五指定标识的用例组对应的用例子集,与第六指定标识的用例组对应的用例子集求交集,得到第三数据集合,该第三数据集中包括的测试用例所属的用例组中,都是同时包括第五指定标识和第六指定标识的用例组的。然后,再将第五指定标识的用例组对应的用例子集减去第三数据集合,也就是说,从其所属的用例组中包括第五指定标识的测试用例集合中,减去那些同时包括第五指定标识和第六指定标识的用例组的测试用例集合,得到的第四数据集合即为最终的提取结果。
例如,在一种实施方式中,第五指定标识和第六指定标识分别为标识F和标识G,测试指令表示要提取的测试用例满足其所属用例组的标识包括标识F,但不包括标识G。那么,先将标识F的用例组对应的用例子集,与标识G的用例组对应的用例子集求交集,然后再将标识F的用例组对应的用例子集减去上述交集的结果,即可得到最终的测试用例提取结果。
此外,在另一种实施方式中,也可能出现更为复杂的场景。例如,测试指令也可以表示为待提取的测试用例满足如下条件:所属用例组的标识中包括标识H和标识I,但是不包括标识J和标识K。也即,包括的标识数目不止一个,不包括的标识数目也不止一个。那么一种处理方式是,先对标识H和标识I各自对应的用例子集做并集,得到第一并集,对标识J和标识K各自对应的用例子集也做并集,得到第二并集,然后将第一并集与第二并集求交集,最后,将第一并集减去所述交集的结果,即可得到最终的提取结果。在另一种处理方式中,也可以是先对标识H和标识I各自对应的用例子集做并集,得到第三并集,然后在第三并集与标识J对应的用例子集之间,按照上述S605和S606的操作进行处理,得到中间结果,最后再在该中间结果与标识K对应的用例子集之间,再次按照上述S605和S606的操作进行处理,即可得到最终的提取结果。本公开实施例对上述两种处理方式,不做任何限定。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集。然后,在测试用例数据集中以单个用例组的标识进行索引,得到每个用例组对应的用例子集。由此,当测试指令表示对所属用例组的标识包括第五指定标识但不包括第六指定标识时,只需要先对这两个指定标识的用例组的用例子集求交集,然后再从第五指定标识的用例组的用例子集中减去该交集的结果,即可得到最终的提取结果。相比于现有技术,可以更加灵活地在多个用例组之间进行测试用例的交叉提取,使得提取效率更高,且便于实现。
图7是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上,对多个用例组中测试用例交叉提取的过程,做出进一步地优化。如图7所示,该方法具体包括如下:
S701、根据预先配置的测试用例配置表,生成测试用例数据集。
其中,测试用例配置表用于记载测试用例及其参数。测试用例数据集中包括测试用例及其参数。所述参数包括测试用例的标识和至少一种描述信息。所述描述信息包括测试用例所属的至少一个用例组的标识。
S702、在测试用例数据集中,对出现的每个用例组的标识逐一进行索引。
S703、将每个用例组对应的测试用例打包,分别生成每个用例组对应的用例子集。
S704、解析测试指令,获取至少三个待处理用例组以及不同的待处理用例组之间的运算符,其中,所述运算符用于表示多个待处理用例组之间的测试用例交叉提取条件。
具体的,在复杂的测试场景中,可能会涉及到对至少三个待处理用例组进行测试用例的交叉提取,这时,在测试指令中可以输入这些待处理用例组的标识,以及中间的运算符。该运算符例如可以是或运算符“|”、与运算符“&”或者非运算符“/”。例如,如果测试指令为“a|b”,则表示提取条件为:测试指令所属的用例组的标识包括a与b中的任意一个;如果测试指令为“a&b”,则表示提取条件为:测试指令所属的用例组的标识同时包括a与b;如果测试指令为“a/b”,则表示提取条件为:测试指令所属的用例组的标识包括a但不包括b。在复杂的测试场景中,输入的运算符可以包括两种以上。例如,如果测试指令为“a&b/c/d”,则表示提取条件为:测试指令所属的用例组的标识同时包括a与b,但不包括c也不包括d。需要说明的是,上述运算符仅为示例,本公开对此不作任何限定,工程师可根据验证需求提前进行配置。
S705、对首个运算符两侧的待处理用例组对应的用例子集,按照首个运算符进行计算,得到当前中间结果集。
在上面的例子中,如果测试指令为“a&b/c/d”,那么首个运算符则为“&”,首个运算符两侧的待处理用例组则为a和b。按照首个运算符进行计算,即为将待处理用例组a对应的用例子集与待处理用例组b对应的用例子集求交集,得到当前中间结果集。
S706、将首个运算符右侧的下一个运算符作为当前运算符。
继续上面的例子,首个运算符右侧的下一个运算符即为“/”。
S707、对当前中间结果集和当前运算符右侧的待处理用例组对应的用例子集,按照当前运算符进行计算,得到新的当前中间结果集。
继续上面的例子,即为:对当前中间结果集,与待处理用例组c对应的用例子集先求交集,然后再用当前中间结果集减去该交集的结果,得到新的当前中间结果集。
S708、判断当前运算符是否为测试指令中的最后一个运算符,如果判断为否,则继续执行S709,否则执行S710。
S709、将当前运算符右侧的下一个运算符作为新的当前运算符。
S710、输出当前中间结果集。
在上面的例子中,因为第二个运算符“/”并不是最后一个运算符,因此,还需要继续进行计算。这时,就是指对新的当前中间结果集与待处理用例组d对应的用例子集,进行“/”运算,运算的结果即为最终的提取结果。
也就是说,当存在对多个用例组中测试用例交叉提取的需求,可以在测试指令中输入多个待处理用例组的标识,并根据提取需求填写相应的运算符。解析测试指令后,按照运算符从左到右的顺序,依次对用例组标识对应的用例子集进行相应的运算即可,从而实现复杂测试情况下的多个用例组之间的测试用例交叉提取。
本公开实施例的技术方案,将测试用例及其参数信息配置在测试用例配置表中,并根据配置表生成测试用例数据集。然后,在测试用例数据集中以单个用例组的标识进行索引,得到每个用例组对应的用例子集。由此,根据测试指令中的多个待处理用例组的标识和运算符,就可以实现复杂测试情况下的多个用例组之间的测试用例交叉提取,相比于现有技术,可以更加灵活地在多个用例组之间进行测试用例的交叉提取,满足不同的提取需求,使得提取效率更高,且便于实现。
图8是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。如图8所示,该方法具体包括如下:
S801、根据测试指令确定至少一个目标子表名。
S802、根据测试用例配置表中,至少一个目标子表名各自对应的测试用例配置子表,生成测试用例数据集。
其中,所述测试用例配置表包括至少一个测试用例配置子表,每个测试用例配置子表具有不同的子表名。在一种具体的实施方式中,所述测试用例配置表可以为excel表格,测试用例配置子表可以为excel表格中的不同sheet页。
例如,在芯片验证场景中,由于芯片中包含很多个需要验证的功能点,需要不同的工程师分别进行验证,但每个工程师编写测试用例的习惯多有不同,而且针对不同的功能点,需要编写的测试用例本身也会存在差别。如果将每个工程师编写的测试用例都存在一个文本文件中,就会出现混乱的情况,不利于后期的用例管理和维护,而且提取需要的测试用例时,也很容易出错。因此,本公开实施例中,可以在测试用例配置表中配置多个子表,每个工程师编写的测试用例都配置在相应的子表中,并对其进行命名。那么,即使有多位工程师编写测试用例,也不会造成混乱的情况,通过不同的子表名就可以选择各自的测试用例,便于工程师查看和编辑,也便于工程师提取所需的测试用例。
在提取测试用例时,可以从一个子表中提取,也可以从多个子表中进行交叉提取,所涉及的子表名可以写在测试指令中。因此,根据测试指令可以确定至少一个目标子表名,然后根据测试用例配置表中,至少一个目标子表名各自对应的测试用例配置子表,生成测试用例数据集,以便进行后续的用例提取。
S803、根据测试指令和测试用例数据集提取测试用例。
具体的,可以在测试指令中记载需要从哪一个或哪些子表中提取测试用例,并且通过运算符来表示需要提取的测试用例的条件,从而在多个子表以及多个子表中的不同用例组中实现更为复杂的交叉提取。
在一种实施方式中,本公开实施例的方法可以由脚本实现,而且,工程师还可以在测试脚本中配置成默认从测试用例配置表的首个子表中提取测试用例,这样,每个工程师只需要将自己的子表设置为首页,而无需更改测试脚本就可以实现用例提取,使用起来更加方便、快捷。
本公开实施例的技术方案,可以在测试用例配置表中配置生成多个不同的测试用例配置子表,不同工程师的测试用例可以配置于对应的子表中,便于工程师查看和编辑。而且,还可以支持针对单一子表中的测试用例提取,以及多个子表中测试用例的交叉提取,提取方式灵活多样,且具有一定的通用性,还便于后续维护,从而提高测试用例提取效率,并进一步提高芯片验证效率。
图9是根据本公开实施例的测试用例的提取方法的流程示意图,本实施例在上述实施例的基础上进一步进行优化。本实施例的方法可以由脚本执行。如图9所示,本实施例首先对配置表中的测试用例case所在列进行扫描,可以得到case数据集,然后在case数据集中对case进行去重操作,判断所有case名字是否唯一,如果不唯一,则报错退出。如果唯一,则进行下一步处理。接着,对配置表进行扫描,从中提取出case及其相关参数,将配置表整合为目标数据集。后面则根据测试指令和该目标数据集进行用例提取。
首先,根据测试指令,判断当前需求是否是在用例组group中提取case,如果否,则提取单一case对应的数据集,如果是,则进一步判断是否是提取多个group中的case,如果否,则提取单一group对应case的数据集,如果是,则从目标数据集中提取每个group对应的case数据集。然后,解析测试指令,获取当前运算符,并针对不同的运算符进行相应的运算处理。最后,如果当前运算符就是测试指令中的最后一个运算符,那么输出当前运算结果即可,反之,则按照运算符从左到右的顺序,继续对下一个运算符进行处理,直到测试指令中的最后一个运算符为止,即可得到最终的提取结果。
可见,本公开实施例的技术方案,与现有技术中将case存储为文本形式不同,而是将case及其参数信息存储为配置表表格,根据表格可以提取出相应的数据集,然后通过对数据集进行相应的处理,就可以实现重复命名的检测,以及所需case的提取。达到的技术效果包括如下几个方面:
1、可以通过excel打开表格,以图表的形式使工程师对编辑的case进行查找和更新,更加方便、快捷;
2、快速实现case名称唯一性校验,确保case数据准确性,提高校验效率;
3、通过对case及group的索引,并打包到数据集中的方式,能够准确、快速实现所需case的提取,同时也能实现多个group的交叉索引,满足复杂芯片验证回归测试,提高验证效率;
4、便于后续维护,只需维护case配置表即可,且具有一定的通用性。
图10是根据本公开实施例的测试用例的提取装置的结构示意图,本实施例可适用于提取测试用例的情况,例如,在大量的芯片验证用测试用例中,高效地提取出当前想要的测试用例。涉及计算机技术领域,尤其涉及测试用例管理和芯片技术。该装置可实现本公开任意实施例所述的测试用例的提取方法。如图10所示,该装置1000具体包括:
测试用例数据集生成模块1001,用于根据预先配置的测试用例配置表,生成测试用例数据集,其中,所述测试用例配置表用于记载测试用例及其参数;
测试用例提取模块1002,用于根据测试指令和所述测试用例数据集提取测试用例。
可选的,所述测试用例数据集中包括所述测试用例及其参数,所述参数包括测试用例的标识和至少一种描述信息。
可选的,测试用例数据集生成模块1001具体用于:
扫描所述测试用例配置表中的每个测试用例及其参数,以所述测试用例的标识为键,以所述测试用例的至少一种描述信息为值,以字典形式生成所述测试用例数据集。
可选的,测试用例提取模块1002包括第一测试用例提取子模块,具体用于:
响应于所述测试指令表示对第一指定标识的测试用例进行提取,在所述测试用例数据集中对所述第一指定标识进行索引,并将索引得到的测试用例作为测试用例提取结果。
可选的,所述描述信息包括测试用例所属的至少一个用例组的标识。
可选的,测试用例提取模块1002包括第二测试用例提取子模块,具体用于:
响应于所述测试指令表示对所属用例组的标识包括第二指定标识的测试用例进行提取,针对所述测试用例数据集,分别在每个测试用例所属的至少一个用例组中对所述第二指定标识进行索引;
将所述每个测试用例所属的至少一个用例组中,存在标识为所述第二指定标识的用例组所对应的测试用例,作为测试用例提取结果。
可选的,所述装置还包括用例子集生成模块,具体用于:
在测试用例提取模块1002根据测试指令和所述测试用例数据集提取测试用例之前,在所述测试用例数据集中,对出现的每个用例组的标识逐一进行索引;
将所述每个用例组对应的测试用例打包,分别生成所述每个用例组对应的用例子集。
可选的,所述测试指令表示对满足第一条件的测试用例进行提取,所述第一条件为:所属用例组的标识包括多个不同的第三指定标识中的任意之一;
相应的,测试用例提取模块1002包括第三测试用例提取子模块,具体用于:
将所述多个第三指定标识中,每个所述第三指定标识的用例组对应的用例子集求并集,得到第一数据集合,并将所述第一数据集合作为测试用例提取结果。
可选的,所述测试指令表示对满足第二条件的测试用例进行提取,所述第二条件为:所属用例组的标识同时包括多个不同的第四指定标识;
相应的,测试用例提取模块1002包括第四测试用例提取子模块,具体用于:
在所述多个不同的第四指定标识的用例组各自对应的用例子集之间求交集,得到第二数据集合,并将所述第二数据集合作为测试用例提取结果。
可选的,所述测试指令表示对满足第三条件的测试用例进行提取,所述第三条件为:所属用例组的标识包括第五指定标识,但不包括第六指定标识;
相应的,测试用例提取模块1002包括第五测试用例提取子模块,具体用于:
将所述第五指定标识的用例组对应的用例子集,与所述第六指定标识的用例组对应的用例子集求交集,得到第三数据集合;
将所述第五指定标识的用例组对应的用例子集减去所述第三数据集合,得到第四数据集合,并将所述第四数据集合作为测试用例提取结果。
可选的,测试用例提取模块1002包括第六测试用例提取子模块,具体用于:
解析所述测试指令,获取至少三个待处理用例组以及不同的所述待处理用例组之间的运算符,其中,所述运算符用于表示多个待处理用例组之间的测试用例交叉提取条件;
对首个运算符两侧的待处理用例组对应的用例子集,按照所述首个运算符进行计算,得到当前中间结果集;
将所述首个运算符右侧的下一个运算符作为当前运算符,并按照从左到右的顺序,重复执行下列操作,直到所述测试指令中的最后一个运算符为止,并输出当前中间结果集:
对当前中间结果集和当前运算符右侧的待处理用例组对应的用例子集,按照当前运算符进行计算,得到新的当前中间结果集,并将当前运算符右侧的下一个运算符作为新的当前运算符。
可选的,所述测试用例配置表包括至少一个测试用例配置子表,每个测试用例配置子表具有不同的子表名。
可选的,所述测试用例数据集生成模块1001还具体用于:
根据所述测试指令确定至少一个目标子表名;
根据所述测试用例配置表中,所述至少一个目标子表名各自对应的测试用例配置子表,生成测试用例数据集。
可选的,所述测试用例配置表为excel表格。
可选的,所述装置还包括重复检测模块,具体用于:
在所述测试用例提取模块1002根据测试指令和所述测试用例数据集提取测试用例之前,在所述测试用例数据集中,对所述各测试用例的标识进行去重操作。
可选的,所述测试用例数据集用于芯片验证。
上述产品可执行本公开任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图11所示,设备1100包括计算单元1101,其可以根据存储在只读存储器(ROM)1102中的计算机程序或者从存储单元1108加载到随机访问存储器(RAM)1103中的计算机程序,来执行各种适当的动作和处理。在RAM 1103中,还可存储设备1100操作所需的各种程序和数据。计算单元1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
设备1100中的多个部件连接至I/O接口1105,包括:输入单元1106,例如键盘、鼠标等;输出单元1107,例如各种类型的显示器、扬声器等;存储单元1108,例如磁盘、光盘等;以及通信单元1109,例如网卡、调制解调器、无线通信收发机等。通信单元1109允许设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1101执行上文所描述的各个方法和处理,例如测试用例的提取方法。例如,在一些实施例中,测试用例的提取方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1108。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1102和/或通信单元1109而被载入和/或安装到设备1100上。当计算机程序加载到RAM 1103并由计算单元1101执行时,可以执行上文描述的测试用例的提取方法的一个或多个步骤。备选地,在其他实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行测试用例的提取方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (15)

1.一种测试用例的提取方法,包括:
根据预先配置的测试用例配置表,生成测试用例数据集,其中,所述测试用例配置表用于记载测试用例及其参数;
在所述测试用例数据集中,对出现的每个用例组的标识逐一进行索引;
将所述每个用例组对应的测试用例打包,分别生成所述每个用例组对应的用例子集;
根据测试指令和所述测试用例数据集提取测试用例;
其中,所述测试用例数据集中包括所述测试用例及其参数,所述参数包括测试用例的标识和至少一种描述信息;所述描述信息包括所述测试用例所属的至少一个用例组的标识;
其中,所述根据测试指令和所述测试用例数据集提取测试用例,包括:
解析所述测试指令,获取至少三个待处理用例组以及不同的所述待处理用例组之间的运算符,其中,所述运算符用于表示多个待处理用例组之间的测试用例交叉提取条件;
对首个运算符两侧的所述待处理用例组对应的用例子集,按照所述首个运算符进行计算,得到当前中间结果集;
将所述首个运算符右侧的下一个运算符作为当前运算符,并按照从左到右的顺序,重复执行下列操作,直到所述测试指令中的最后一个运算符为止,并输出当前中间结果集:
对所述当前中间结果集和所述当前运算符右侧的待处理用例组对应的用例子集,按照所述当前运算符进行计算,得到新的当前中间结果集,并将所述当前运算符右侧的下一个运算符作为新的当前运算符。
2.根据权利要求1所述的方法,其中,所述根据预先配置的测试用例配置表,生成测试用例数据集,包括:
扫描所述测试用例配置表中的每个测试用例及其参数,以所述测试用例的标识为键,以所述测试用例的至少一种描述信息为值,以字典形式生成所述测试用例数据集。
3.根据权利要求1所述的方法,其中,所述根据测试指令和所述测试用例数据集提取测试用例,包括:
响应于所述测试指令表示对第一指定标识的测试用例进行提取,在所述测试用例数据集中对所述第一指定标识进行索引,并将索引得到的测试用例作为测试用例提取结果。
4.根据权利要求1所述的方法,其中,所述根据测试指令和所述测试用例数据集提取测试用例,包括:
响应于所述测试指令表示对所属用例组的标识包括第二指定标识的测试用例进行提取,针对所述测试用例数据集,分别在每个测试用例所属的至少一个用例组中对所述第二指定标识进行索引;
将所述每个测试用例所属的至少一个用例组中,存在标识为所述第二指定标识的用例组所对应的测试用例,作为测试用例提取结果。
5.根据权利要求1所述的方法,其中,所述测试指令表示对满足第一条件的测试用例进行提取,所述第一条件为:所属用例组的标识包括多个不同的第三指定标识中的任意之一;
相应的,所述根据测试指令和所述测试用例数据集提取测试用例,包括:
将所述多个第三指定标识中,每个所述第三指定标识的用例组对应的用例子集求并集,得到第一数据集合,并将所述第一数据集合作为测试用例提取结果。
6.根据权利要求1所述的方法,其中,所述测试指令表示对满足第二条件的测试用例进行提取,所述第二条件为:所属用例组的标识同时包括多个不同的第四指定标识;
相应的,所述根据测试指令和所述测试用例数据集提取测试用例,包括:
在所述多个不同的第四指定标识的用例组各自对应的用例子集之间求交集,得到第二数据集合,并将所述第二数据集合作为测试用例提取结果。
7.根据权利要求1所述的方法,其中,所述测试指令表示对满足第三条件的测试用例进行提取,所述第三条件为:所属用例组的标识包括第五指定标识,但不包括第六指定标识;
相应的,所述根据测试指令和所述测试用例数据集提取测试用例,包括:
将所述第五指定标识的用例组对应的用例子集,与所述第六指定标识的用例组对应的用例子集求交集,得到第三数据集合;
将所述第五指定标识的用例组对应的用例子集减去所述第三数据集合,得到第四数据集合,并将所述第四数据集合作为测试用例提取结果。
8.根据权利要求1所述的方法,其中,所述测试用例配置表包括至少一个测试用例配置子表,每个测试用例配置子表具有不同的子表名。
9.根据权利要求8所述的方法,其中,所述根据预先配置的测试用例配置表,生成测试用例数据集,包括:
根据所述测试指令确定至少一个目标子表名;
根据所述测试用例配置表中,所述至少一个目标子表名各自对应的测试用例配置子表,生成测试用例数据集。
10.根据权利要求1所述的方法,其中,所述测试用例配置表为excel表格。
11.根据权利要求1所述的方法,在所述根据测试指令和所述测试用例数据集提取测试用例之前,所述方法还包括:
在所述测试用例数据集中,对所述各测试用例的标识进行去重操作。
12.根据权利要求1所述的方法,其中,所述测试用例数据集用于芯片验证。
13.一种测试用例的提取装置,包括:
测试用例数据集生成模块,用于根据预先配置的测试用例配置表,生成测试用例数据集,其中,所述测试用例配置表用于记载测试用例及其参数;
用例子集生成模块,用于在所述测试用例数据集中,对出现的每个用例组的标识逐一进行索引;
将所述每个用例组对应的测试用例打包,分别生成所述每个用例组对应的用例子集;
测试用例提取模块,用于根据测试指令和所述测试用例数据集提取测试用例;
其中,所述测试用例数据集中包括所述测试用例及其参数,所述参数包括测试用例的标识和至少一种描述信息;所述描述信息包括所述测试用例所属的至少一个用例组的标识;
其中,所述测试用例提取模块包括第六测试用例提取子模块,具体用于:
解析所述测试指令,获取至少三个待处理用例组以及不同的所述待处理用例组之间的运算符,其中,所述运算符用于表示多个待处理用例组之间的测试用例交叉提取条件;
对首个运算符两侧的所述待处理用例组对应的用例子集,按照所述首个运算符进行计算,得到当前中间结果集;
将所述首个运算符右侧的下一个运算符作为当前运算符,并按照从左到右的顺序,重复执行下列操作,直到所述测试指令中的最后一个运算符为止,并输出当前中间结果集:
对所述当前中间结果集和所述当前运算符右侧的待处理用例组对应的用例子集,按照所述当前运算符进行计算,得到新的当前中间结果集,并将所述当前运算符右侧的下一个运算符作为新的当前运算符。
14.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-12中任一项所述的测试用例的提取方法。
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-12中任一项所述的测试用例的提取方法。
CN202210646092.5A 2022-06-08 2022-06-08 测试用例的提取方法、装置、设备和介质 Active CN114880242B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210646092.5A CN114880242B (zh) 2022-06-08 2022-06-08 测试用例的提取方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210646092.5A CN114880242B (zh) 2022-06-08 2022-06-08 测试用例的提取方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN114880242A CN114880242A (zh) 2022-08-09
CN114880242B true CN114880242B (zh) 2023-01-13

Family

ID=82681571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210646092.5A Active CN114880242B (zh) 2022-06-08 2022-06-08 测试用例的提取方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN114880242B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101814055A (zh) * 2010-04-06 2010-08-25 南京大学 一种测试用例聚类取样方法
CN102063376A (zh) * 2011-02-16 2011-05-18 哈尔滨工程大学 一种测试用例选取方法
CN102193858A (zh) * 2010-03-02 2011-09-21 中国科学院软件研究所 一种测试用例集生成方法
CN104090838A (zh) * 2014-06-19 2014-10-08 苏州市职业大学 一种生成测试用例的方法
CN108763094A (zh) * 2018-06-01 2018-11-06 百度在线网络技术(北京)有限公司 测试用例生成方法、装置、设备及存储介质
CN110209587A (zh) * 2019-06-04 2019-09-06 北京智芯微电子科技有限公司 安全芯片业务流程的测试方法及装置
CN110532169A (zh) * 2019-07-08 2019-12-03 平安科技(深圳)有限公司 接口测试用例生成方法、装置、计算机设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102331967B (zh) * 2011-06-15 2014-08-27 烽火通信科技股份有限公司 芯片验证测试用例的管理方法
CN103226512A (zh) * 2013-04-02 2013-07-31 河海大学 基于构件测试用例集组合的构件组装测试方法
CN104239204A (zh) * 2014-08-20 2014-12-24 浪潮(北京)电子信息产业有限公司 一种最小测试用例集的生成方法
US9983984B2 (en) * 2015-01-05 2018-05-29 International Business Machines Corporation Automated modularization of graphical user interface test cases
CN106557413A (zh) * 2015-09-25 2017-04-05 伊姆西公司 基于代码覆盖率获取测试用例的方法和设备
CN113297053A (zh) * 2020-02-21 2021-08-24 阿里巴巴集团控股有限公司 测试覆盖率的确定方法、装置和存储介质
CN113094277A (zh) * 2021-04-23 2021-07-09 广州粒子微电子有限公司 芯片测试用例管理方法及装置
CN114328276B (zh) * 2022-03-10 2022-05-20 北京车智赢科技有限公司 测试用例生成方法和装置,显示测试用例的方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193858A (zh) * 2010-03-02 2011-09-21 中国科学院软件研究所 一种测试用例集生成方法
CN101814055A (zh) * 2010-04-06 2010-08-25 南京大学 一种测试用例聚类取样方法
CN102063376A (zh) * 2011-02-16 2011-05-18 哈尔滨工程大学 一种测试用例选取方法
CN104090838A (zh) * 2014-06-19 2014-10-08 苏州市职业大学 一种生成测试用例的方法
CN108763094A (zh) * 2018-06-01 2018-11-06 百度在线网络技术(北京)有限公司 测试用例生成方法、装置、设备及存储介质
CN110209587A (zh) * 2019-06-04 2019-09-06 北京智芯微电子科技有限公司 安全芯片业务流程的测试方法及装置
CN110532169A (zh) * 2019-07-08 2019-12-03 平安科技(深圳)有限公司 接口测试用例生成方法、装置、计算机设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多目标优化的测试用例优先级在线调整策略;张娜等;《软件学报》;20151015;第26卷(第10期);2451-2464 *

Also Published As

Publication number Publication date
CN114880242A (zh) 2022-08-09

Similar Documents

Publication Publication Date Title
CN112579727B (zh) 文档内容的提取方法、装置、电子设备及存储介质
CN113836314B (zh) 知识图谱构建方法、装置、设备以及存储介质
CN113590776A (zh) 基于知识图谱的文本处理方法、装置、电子设备及介质
CN112559631A (zh) 分布式图数据库的数据处理方法、装置以及电子设备
CN113656590A (zh) 行业图谱的构建方法、装置、电子设备及存储介质
CN114861059A (zh) 资源推荐方法、装置、电子设备及存储介质
CN108932225A (zh) 用于将自然语言需求转换成为语义建模语言语句的方法和系统
CN115186738B (zh) 模型训练方法、装置和存储介质
CN114880242B (zh) 测试用例的提取方法、装置、设备和介质
CN116881219A (zh) 数据库的优化处理方法、装置、电子设备及存储介质
JP7390442B2 (ja) 文書処理モデルのトレーニング方法、装置、機器、記憶媒体及びプログラム
CN112860811B (zh) 数据血缘关系的确定方法、装置、电子设备和存储介质
CN114168119B (zh) 代码文件编辑方法、装置、电子设备以及存储介质
CN113704256B (zh) 数据识别方法、装置、电子设备及存储介质
CN115544010A (zh) 一种映射关系确定方法、装置、电子设备及存储介质
CN115577106A (zh) 基于人工智能的文本分类方法、装置、设备和介质
CN114969444A (zh) 数据的处理方法、装置、电子设备和存储介质
CN114817003A (zh) 一种测试信息处理方法、装置、设备及存储介质
CN114579580A (zh) 存储数据的方法、查询数据的方法和装置
CN114490969A (zh) 基于表格的问答方法、装置以及电子设备
CN113221566A (zh) 实体关系抽取方法、装置、电子设备和存储介质
CN112560481A (zh) 语句处理方法、设备和存储介质
CN116069914B (zh) 训练数据的生成方法、模型训练方法以及装置
CN112632293B (zh) 行业图谱的构建方法、装置、电子设备及存储介质
CN112783507B (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