CN114968787B - 基于节点关系的测试方法、装置及电子设备 - Google Patents
基于节点关系的测试方法、装置及电子设备 Download PDFInfo
- Publication number
- CN114968787B CN114968787B CN202210590346.6A CN202210590346A CN114968787B CN 114968787 B CN114968787 B CN 114968787B CN 202210590346 A CN202210590346 A CN 202210590346A CN 114968787 B CN114968787 B CN 114968787B
- Authority
- CN
- China
- Prior art keywords
- node
- target
- test case
- case
- test
- 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
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是本申请的一个实施例的基于节点关系的测试装置的结构示意图;
图5是本申请的一个实施例的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的基于节点关系的测试方法进行详细地说明。
图1示出本申请的一个实施例提供的一种基于节点关系的测试方法100的示意性流程图,该方法可以由电子设备执行,该电子设备可以包括:服务器和/或终端设备。换言之,该方法可以由安装在电子设备的软件或硬件来执行,该方法包括如下步骤:
110:确定测试用例节点之间的节点关系。其中,所述节点关系包括前置关系和后置关系。
可以理解的,在步骤110之前,方法还包括:根据测试流程的步骤,将测试用例分解到流程图中。
其中,每个测试用例对应流程图中的一个测试用例节点。
在测试流程存在变更时,将根据变更后的测试流程的步骤,将测试用例重新分解到流程图中。
120:根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息。其中,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点。
可以理解的,当前用例节点执行前需要执行的测试用例节点为当前用例节点的前置用例节点,当前用例节点执行后再进行执行的测试用例节点为当前用例节点的后置用例节点。若当前用例节点不存在前置用例节点,那么当前用例节点为起点用例节点,若当前用例节点不存在后置用例节点,那么当前用例节点为结果用例节点。在目标节点信息中,起点用例节点的前置用例节点,以及结果用例节点的后置用例节点均可以使用特定的标识用例节点进行标识。
根据测试用例节点之间的前置关系和后置关系,对每个测试用例节点进行结构化处理,确定出每个测试用例节点的前置用例节点和后置用例节点,得到每个测试用例节点的目标节点信息。
一个测试用例节点的目标节点信息可以用于指示该测试用例节点、该测试用例节点的前置用例节点,以及该测试用例节点的后置用例节点。
图2是一个测试用例节点的测试流程的示意图。可以看到,当前用例节点具有一个前置用例节点和三个后置用例节点。若要执行当前用例节点,需要先执行前置用例节点,在当前用例节点执行完成后有三个后置用例节点可以选择执行,每次只能执行一个后置用例节点。
在一种实现方式中,所述目标节点信息为嵌套列表格式数据,以图2中的测试用例节点举例,当前用例节点的目标节点信息如下:
[前置用例节点,当前用例节点,[后置用例节点1,后置用例节点2,后置用例节点3]]。
在一种实现方式中,在得到每个测试用例节点的目标节点信息之后,根据所述测试用例节点的目标节点信息,生成目标节点信息库testcaseNodeDict。所述目标节点信息库testcaseNodeDict包括所有测试用例节点的目标节点信息。
在所述目标节点信息库testcaseNodeDict中,键名为测试用例节点的名称testcaseNode,其中,每个测试用例节点的名称都是唯一的,使用测试用例节点的名称可以在目标节点信息库中搜索出唯一对应的测试用例节点。在所述目标节点信息库testcaseNodeDict中,与键名对应的键值为该测试用例节点的目标节点信息。所述目标节点信息库testcaseNodeDict可以举例为:{“testcaseNode1”:[前置用例节点1,当前用例节点1,[后置用例节点11,后置用例节点12,后置用例节点13]];“testcaseNode2”:[前置用例节点2,当前用例节点2,[后置用例节点21,后置用例节点22,后置用例节点23]];.....;“testcaseNodeN”:[前置用例节点N,当前用例节点N,[后置用例节点N1,后置用例节点N2,后置用例节点N3]]}。
在一种实现方式中,所述每个测试用例节点的目标节点信息包括的前置用例节点的个数为一个。
也就是说,测试用例的分解和对测试用例节点进行的结构化处理,需要满足每个测试用例节点只存在一个前置用例节点的规则。
130:基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列。
所述目标测试用例节点队列用于指示需要执行测试的测试用例节点以及测试用例节点的测试顺序。
其中,确定出的目标测试用例节点队列可以仅有一条,也可以包括多条。
其中,一条测试用例节点队列可以举例为:{“testcaseNodeA”-“testcaseNodeB”-“testcaseNodeC”-......-“testcaseNodeN”}。其中,测试用例节点的测试顺序是“testcaseNodeA”依次到“testcaseNodeN”。
140:根据所述目标测试用例节点队列进行测试。
根据目标测试用例节点队列中的需要执行测试的测试用例节点和测试用例节点的测试顺序进行测试。
由此,能够基于节点关系管理测试用例,自动确定需要执行测试的测试用例节点,并按照测试顺序对需要执行测试的测试用例节点进行测试,提高自动化测试效率。
在一种实现方式中,在步骤120根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息之后,方法还包括:根据每个测试用例节点的目标节点信息,生成每个测试用例节点的测试用例脚本代码。
对每个测试用例节点的目标节点信息进行转换,将每个测试用例节点的目标节点信息转换为测试用例脚本代码。应理解的,在得到测试用例节点的测试用例脚本代码之后,只需将测试用例节点的流程操作代码填入,就可完成测试用例节点的代码编辑。由此,只需要补充步骤具体实现代码,就可直接执行,从而减少代码的维护成本。
若测试用例节点的目标节点信息有变更,则根据变更后的目标节点信息,重新生成新的测试用例脚本代码。
步骤140就可以调用目标测试用例节点队列中的测试用例节点的测试用例脚本代码进行测试。
本申请实施例提供的一种基于节点关系的测试方法,通过确定测试用例节点之间的节点关系,所述节点关系包括前置关系和后置关系;根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点;基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列;根据所述目标测试用例节点队列进行测试。由此,能够基于节点关系管理测试用例,自动确定需要执行测试的测试用例节点,并按照测试顺序对需要执行测试的测试用例节点进行测试,提高自动化测试效率。
图3示出本申请的一个实施例提供的一种基于节点关系的测试方法200的示意性流程图,该方法可以由电子设备执行,该电子设备可以包括:服务器和/或终端设备。换言之,该方法可以由安装在电子设备的软件或硬件来执行,该方法包括如下步骤:
210:确定测试用例节点之间的节点关系。其中,所述节点关系包括前置关系和后置关系。
220:根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息。其中,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点。
步骤210-220可以采用图1实施例步骤110-120的描述,在此不再赘述。
231:确定目标执行模式。
在本申请实施例中,区分多种不同的执行模式,不同的执行模式对应不同的步骤遍历算法。因此,在基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列之前,先确定目标执行模式。目标执行模式为指定用例执行模式、全量用例执行模式和指定节点关联用例执行模式中的一者。
其中,指定用例执行模式用于针对指定测试用例节点进行测试,全量用例执行模式用于针对所有测试用例节点进行测试,指定节点关联用例执行模式用于针对指定测试用例节点的关联测试用例节点进行测试。
232:根据所述目标执行模式,确定所述目标步骤遍历算法。
233:基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列。
在目标执行模式为指定用例执行模式的情况下,基于目标节点信息,对指定的第一测试用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列。
其中,指定用例执行模式针对指定的第一测试用例节点进行测试,对指定的第一测试用例节点采用往前查询步骤遍历算法,也就是从第一测试用例节点开始,往前查询前置用例节点,直至起点用例节点,由此得到一条目标测试用例节点队列,测试顺序为从起点用例节点至第一测试用例节点。
举个例子:指定用例执行模式指定针对第一测试用例节点testcaseNodeOne进行测试,首先定义一个双向队列testcaseNodeOneStep,将testcaseNodeOne放进队列中;再从目标节点信息库testcaseNodeDict中取出testcaseNodeOne的前置测试用例testcaseNodeOneBack1=testcaseNodeDict[“testcaseNodeOne”][0],并将testcaseNodeOneBack1的值从左边加入双向队列testcaseNodeOneStep中,此时双向队列的值为[testcaseNodeOneBack1,testcaseNodeOne];继续取出testcaseNodeOneBack1的前置用例testcaseNodeOneBack2=testcaseNodeDict[“testcaseNodeOneBack1”][0],并将testcaseNodeOneBack2的值从左边加入双向队列testcaseNodeOneStep中,此时双向队列的值为[testcaseNodeOneBack2,testcaseNodeOneBack1,testcaseNodeOne];依此方法循环取值,直到testcaseNodeDict[“testcaseNodeOneBack1N”][0]=0停止循环,其中,testcaseNodeDict[“testcaseNodeOneBack1N”][0]=0表示“testcaseNodeOneBack1N”为起点用例节点,此时testcaseNodeOneStep的值为[testcaseNodeOneBack1N,......,testcaseNodeOneBack2,testcaseNodeOneBack1,testcaseNodeOne]。根据队列testcaseNodeOneStep的值可以确定testcaseNodeOne的执行步骤是从testcaseNodeOneBack1N开始,依照顺序执行到testcaseNodeOne结束。针对第一测试用例节点testcaseNodeOne进行测试,就是按照testcaseNodeOneStep队列的顺序依次执行每个测试用例节点。
在目标执行模式为全量用例执行模式的情况下,基于目标节点信息,对所有结果用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列。
其中,全量用例执行模式针对所有测试用例节点进行测试,对所有结果用例节点一一采用往前查询步骤遍历算法,确定出每个结果用例节点的测试用例节点队列,再依次执行每个结果用例节点,由此完成全量测试。
在目标执行模式为指定节点关联用例执行模式的情况下,基于目标节点信息,对指定的第二测试用例节点采用往前查询步骤遍历算法和往后回溯步骤遍历算法,得到目标测试用例节点队列。
其中,指定节点关联用例执行模式针对指定的第二测试用例节点的关联测试用例节点进行测试,对指定的第二测试用例节点采用往前查询步骤遍历算法和往后回溯步骤遍历算法,得到目标测试用例节点队列。
举个例子:指定节点关联用例执行模式指定针对第二测试用例节点testcaseNodeOne的关联测试用例节点进行测试,首先对第二测试用例节点testcaseNodeOne进行往前查询步骤遍历算法,得到testcaseNodeOne的测试步骤路径testcaseNodeOneStep;再使用往后回溯步骤遍历算法完成从第二测试用例节点testcaseNodeOne到结果用例节点的步骤计算,具体为:首先,从目标节点信息库testcaseNodeDict中取出testcaseNodeOne的后置用例列表testcaseNodeOneAfter=testcaseNodeDict[“testcaseNodeOne”][2],计算testcaseNodeOneAfter列表中的节点数Num=len(testcaseNodeOneAfter),则表示testcaseNodeOne后置步骤有Num种路径;接着,testcaseNodeOneAfter[0]、testcaseNodeOneAfter[1]、...、testcaseNodeOneAfter[Num]分别有其后置路径,采用后置路径回溯算法,从第二测试用例节点testcaseNodeOne往后寻找后置用例节点,从testcaseNodeOne出发,后置用例节点全部选择第一后置用例节点,直到到达结果用例节点testcaseNodeDict[“testcaseNodeOneAfter1”][2]=0,记录执行路径testcaseNodeOneAfterStep1和关联结果用例节点testcaseNodeOneEnd1,再回溯遍历,将全部路径存入到N个步骤列表:testcaseNodeOneAfterStep1,testcaseNodeOneAfterStep2,......,testcaseNodeOneAfterStepN中。最后,这N个关联结果用例节点的执行步骤分别为:testcaseNodeOneStep+testcaseNodeOneAfterStep1,testcaseNodeOneStep+testcaseNodeOneAfterStep2,......,testcaseNodeOneStep+testcaseNodeOneAfterStepN。
在一种实现方式中,在第三测试用例节点的功能变更的情况下,确定所述目标执行模式为指定节点关联用例执行模式。指定节点关联用例执行模式用于针对指定的第二测试用例节点的关联测试用例节点进行测试。
由此,可针对性的进行回归测试,仅对发生变更的指定测试用例节点的关联测试用例节点进行测试,不执行不关联的测试用例节点,从而减少测试执行时间,进一步提高测试效率。
240:根据所述目标测试用例节点队列进行测试。
步骤240可以采用图1实施例步骤140的描述,在此不再赘述。
本申请实施例提供的一种基于节点关系的测试方法,通过确定测试用例节点之间的节点关系,所述节点关系包括前置关系和后置关系;根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点;基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列;根据所述目标测试用例节点队列进行测试。由此,能够基于节点关系管理测试用例,自动确定需要执行测试的测试用例节点,并按照测试顺序对需要执行测试的测试用例节点进行测试,提高自动化测试效率。
本申请实施例提供的一种基于节点关系的测试方法,通过确定目标执行模式;根据所述目标执行模式,确定所述目标步骤遍历算法;其中,所述目标执行模式为指定用例执行模式、全量用例执行模式和指定节点关联用例执行模式中的一者,由此,能够根据不同的执行模式,采用不同的步骤遍历算法确定目标测试用例节点队列,提高测试效率。
图4是根据本申请实施例的基于节点关系的测试装置的结构示意图。如图4所示,基于节点关系的测试装置300包括:第一确定模块310、结构化模块320、第二确定模块330、测试模块340。第一确定模块310,用于确定测试用例节点之间的节点关系,所述节点关系包括前置关系和后置关系;结构化模块320,用于根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点;第二确定模块330,用于基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列;测试模块340,用于根据所述目标测试用例节点队列进行测试。
在一种实现方式中,所述装置还包括脚本生成模块,用于根据所述每个测试用例节点的目标节点信息,生成所述每个测试用例节点的测试用例脚本代码。所述测试模块用于调用所述目标测试用例节点队列中的测试用例节点的测试用例脚本代码进行测试。
在一种实现方式中,所述装置还包括第三确定模块,用于确定目标执行模式;根据所述目标执行模式,确定所述目标步骤遍历算法;其中,所述目标执行模式为指定用例执行模式、全量用例执行模式和指定节点关联用例执行模式中的一者。
在一种实现方式中,所述第二确定模块,用于在所述目标执行模式为所述指定用例执行模式的情况下,基于所述目标节点信息,对指定的第一测试用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;在所述目标执行模式为所述全量用例执行模式的情况下,基于所述目标节点信息,对所有结果用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;在所述目标执行模式为所述指定节点关联用例执行模式的情况下,基于所述目标节点信息,对指定的第二测试用例节点采用往前查询步骤遍历算法和往后回溯步骤遍历算法,得到目标测试用例节点队列。
在一种实现方式中,所述第三确定模块,用于在第三测试用例节点的功能变更的情况下,确定所述目标执行模式为所述指定节点关联用例执行模式。
在一种实现方式中,所述装置还包括分解模块,用于根据测试流程的步骤,将测试用例分解到流程图中;其中,每个测试用例对应流程图中的一个测试用例节点。
本申请实施例中的基于节点关系的测试装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的基于节点关系的测试装置可以为具有操作***的装置。该操作***可以为安卓(Android)操作***,可以为ios操作***,还可以为其他可能的操作***,本申请实施例不作具体限定。
本申请实施例提供的基于节点关系的测试装置能够实现上述任一实施例提供的基于节点关系的测试方法中的各个过程,为避免重复,这里不再赘述。
图5为实现本申请实施例的一种电子设备的硬件结构示意图,该电子设备可以为终端设备或服务器设备,该电子设备包括:天线401、射频装置402、基带装置403、网络接口404、存储器405和处理器406,存储在存储器405上并可在所述处理器406上运行的程序或指令,该程序或指令被处理器406执行时实现:
其中,处理器406用于确定测试用例节点之间的节点关系,所述节点关系包括前置关系和后置关系;根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点;基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列;根据所述目标测试用例节点队列进行测试。
在一种实现方式中,处理器406用于根据所述每个测试用例节点的目标节点信息,生成所述每个测试用例节点的测试用例脚本代码。调用所述目标测试用例节点队列中的测试用例节点的测试用例脚本代码进行测试。
在一种实现方式中,处理器406用于确定目标执行模式;根据所述目标执行模式,确定所述目标步骤遍历算法;其中,所述目标执行模式为指定用例执行模式、全量用例执行模式和指定节点关联用例执行模式中的一者。
在一种实现方式中,处理器406用于在所述目标执行模式为所述指定用例执行模式的情况下,基于所述目标节点信息,对指定的第一测试用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;在所述目标执行模式为所述全量用例执行模式的情况下,基于所述目标节点信息,对所有结果用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;在所述目标执行模式为所述指定节点关联用例执行模式的情况下,基于所述目标节点信息,对指定的第二测试用例节点采用往前查询步骤遍历算法和往后回溯步骤遍历算法,得到目标测试用例节点队列。
在一种实现方式中,处理器406用于在第三测试用例节点的功能变更的情况下,确定所述目标执行模式为所述指定节点关联用例执行模式。
在一种实现方式中,处理器406用于根据测试流程的步骤,将测试用例分解到流程图中;其中,每个测试用例对应流程图中的一个测试用例节点。
根据本申请实施例的电子设备400可以参照对应本申请实施例的方法100-200的流程,并且,该电子设备400中的各个单元/模块和上述其他操作和/或功能分别为了实现方法100-200中的相应流程,并且能够达到相同或等同的技术效果,为了简洁,在此不再赘述。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述基于节点关系的测试方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述100-200方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为***级芯片、***芯片、芯片***或片上***芯片等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (8)
1.一种基于节点关系的测试方法,其特征在于,所述方法包括:
确定测试用例节点之间的节点关系,所述节点关系包括前置关系和后置关系;
根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点;
基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列;
根据所述目标测试用例节点队列进行测试;
在所述基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列之前,所述方法还包括:
确定目标执行模式;
根据所述目标执行模式,确定所述目标步骤遍历算法;
其中,所述目标执行模式为指定用例执行模式、全量用例执行模式和指定节点关联用例执行模式中的一者;
所述基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列,包括:
在所述目标执行模式为所述指定用例执行模式的情况下,基于所述目标节点信息,对指定的第一测试用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;
在所述目标执行模式为所述全量用例执行模式的情况下,基于所述目标节点信息,对所有结果用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;
在所述目标执行模式为所述指定节点关联用例执行模式的情况下,基于所述目标节点信息,对指定的第二测试用例节点采用往前查询步骤遍历算法和往后回溯步骤遍历算法,得到目标测试用例节点队列;
其中,所述往前查询步骤遍历算法用于从测试用例节点开始,往前查询测试用例节点的前置用例节点,直至起点用例节点;
所述往后回溯步骤遍历算法用于从测试用例节点开始,往后查询测试用例节点的后置用例节点,直至结果用例节点。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息之后,所述方法还包括:
根据所述每个测试用例节点的目标节点信息,生成所述每个测试用例节点的测试用例脚本代码;
所述根据所述目标测试用例节点队列进行测试,包括:
调用所述目标测试用例节点队列中的测试用例节点的测试用例脚本代码进行测试。
3.根据权利要求1所述的方法,其特征在于,所述每个测试用例节点的目标节点信息包括的前置用例节点的个数为一个。
4.根据权利要求3所述的方法,其特征在于,所述确定目标执行模式包括:
在第三测试用例节点的功能变更的情况下,确定所述目标执行模式为所述指定节点关联用例执行模式。
5.根据权利要求1所述的方法,其特征在于,在所述确定测试用例节点之间的节点关系之前,所述方法还包括:
根据测试流程的步骤,将测试用例分解到流程图中;
其中,每个测试用例对应流程图中的一个测试用例节点。
6.一种基于节点关系的测试装置,其特征在于,包括:
第一确定模块,用于确定测试用例节点之间的节点关系,所述节点关系包括前置关系和后置关系;
结构化模块,用于根据所述节点关系,对每个测试用例节点进行结构化处理,得到所述每个测试用例节点的目标节点信息,所述目标节点信息包括前置用例节点、当前用例节点和后置用例节点;
第二确定模块,用于基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列;
测试模块,用于根据所述目标测试用例节点队列进行测试;
其中,所述第二确定模块用于在所述基于所述目标节点信息和目标步骤遍历算法,确定目标测试用例节点队列之前,
确定目标执行模式;
根据所述目标执行模式,确定所述目标步骤遍历算法;
其中,所述目标执行模式为指定用例执行模式、全量用例执行模式和指定节点关联用例执行模式中的一者;
所述第二确定模块用于在所述目标执行模式为所述指定用例执行模式的情况下,基于所述目标节点信息,对指定的第一测试用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;
在所述目标执行模式为所述全量用例执行模式的情况下,基于所述目标节点信息,对所有结果用例节点采用往前查询步骤遍历算法,得到目标测试用例节点队列;
在所述目标执行模式为所述指定节点关联用例执行模式的情况下,基于所述目标节点信息,对指定的第二测试用例节点采用往前查询步骤遍历算法和往后回溯步骤遍历算法,得到目标测试用例节点队列;
所述往前查询步骤遍历算法用于从测试用例节点开始,往前查询测试用例节点的前置用例节点,直至起点用例节点;
所述往后回溯步骤遍历算法用于从测试用例节点开始,往后查询测试用例节点的后置用例节点,直至结果用例节点。
7.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-5任一项所述的基于节点关系的测试方法的步骤。
8.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-5任一项所述的基于节点关系的测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210590346.6A CN114968787B (zh) | 2022-05-27 | 2022-05-27 | 基于节点关系的测试方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210590346.6A CN114968787B (zh) | 2022-05-27 | 2022-05-27 | 基于节点关系的测试方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114968787A CN114968787A (zh) | 2022-08-30 |
CN114968787B true CN114968787B (zh) | 2023-09-19 |
Family
ID=82957594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210590346.6A Active CN114968787B (zh) | 2022-05-27 | 2022-05-27 | 基于节点关系的测试方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114968787B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8117591B1 (en) * | 2005-01-07 | 2012-02-14 | Interactive TKO, Inc. | Graphical model for test case viewing, editing, and reporting |
CN105824746A (zh) * | 2015-01-05 | 2016-08-03 | ***(深圳)有限公司 | 一种基于用例依赖关系自动生成测试调度的方法和装置 |
CN109117363A (zh) * | 2018-06-28 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 一种测试用例生成方法、装置及服务器 |
CN110908896A (zh) * | 2019-10-29 | 2020-03-24 | 天津幸福生命科技有限公司 | 一种基于决策树的测试方法及装置 |
CN112286779A (zh) * | 2019-07-23 | 2021-01-29 | 腾讯科技(深圳)有限公司 | 测试任务处理方法、装置、存储介质和计算机设备 |
CN112433944A (zh) * | 2020-11-25 | 2021-03-02 | 平安普惠企业管理有限公司 | 业务测试方法、装置、计算机设备和存储介质 |
CN112597014A (zh) * | 2020-12-16 | 2021-04-02 | 软通动力信息技术(集团)股份有限公司 | 基于数据驱动的自动化测试方法、装置、介质及电子设备 |
CN112905457A (zh) * | 2021-02-08 | 2021-06-04 | 珠海金山网络游戏科技有限公司 | 软件测试方法及装置 |
CN112948234A (zh) * | 2020-08-26 | 2021-06-11 | 深圳市明源云链互联网科技有限公司 | 接口测试方法、装置及电子设备 |
CN113312265A (zh) * | 2021-06-08 | 2021-08-27 | 富途网络科技(深圳)有限公司 | 测试用例的应用方法及相关产品 |
CN114020604A (zh) * | 2021-10-22 | 2022-02-08 | 济南浪潮数据技术有限公司 | 一种基于工作流的自动化测试方法及装置 |
CN114077534A (zh) * | 2020-08-11 | 2022-02-22 | 腾讯科技(深圳)有限公司 | 测试用例生成方法、装置和计算机可读存储介质 |
CN114116496A (zh) * | 2021-11-30 | 2022-03-01 | 中国平安人寿保险股份有限公司 | 自动化测试方法、装置、设备及介质 |
CN114265774A (zh) * | 2021-12-20 | 2022-04-01 | 北京字节跳动网络技术有限公司 | 一种测试用例的节点信息配置方法及装置 |
CN114490404A (zh) * | 2022-02-10 | 2022-05-13 | 中国农业银行股份有限公司 | 一种测试用例确定方法、装置、电子设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7685576B2 (en) * | 2004-01-26 | 2010-03-23 | Siemens Corporation | System and method for model based system testing of interactive applications |
US8903938B2 (en) * | 2007-06-18 | 2014-12-02 | Amazon Technologies, Inc. | Providing enhanced data retrieval from remote locations |
US10437883B2 (en) * | 2015-11-24 | 2019-10-08 | Cisco Technology, Inc. | Efficient graph database traversal |
US10169215B2 (en) * | 2016-09-26 | 2019-01-01 | Cognizant Technology Solutions India Pvt. Ltd. | Method and system for analyzing test cases for automatically generating optimized business models |
US10423523B2 (en) * | 2018-02-02 | 2019-09-24 | Ca, Inc. | Automated selection of test cases for regression testing |
-
2022
- 2022-05-27 CN CN202210590346.6A patent/CN114968787B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8117591B1 (en) * | 2005-01-07 | 2012-02-14 | Interactive TKO, Inc. | Graphical model for test case viewing, editing, and reporting |
CN105824746A (zh) * | 2015-01-05 | 2016-08-03 | ***(深圳)有限公司 | 一种基于用例依赖关系自动生成测试调度的方法和装置 |
CN109117363A (zh) * | 2018-06-28 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 一种测试用例生成方法、装置及服务器 |
CN112286779A (zh) * | 2019-07-23 | 2021-01-29 | 腾讯科技(深圳)有限公司 | 测试任务处理方法、装置、存储介质和计算机设备 |
CN110908896A (zh) * | 2019-10-29 | 2020-03-24 | 天津幸福生命科技有限公司 | 一种基于决策树的测试方法及装置 |
CN114077534A (zh) * | 2020-08-11 | 2022-02-22 | 腾讯科技(深圳)有限公司 | 测试用例生成方法、装置和计算机可读存储介质 |
CN112948234A (zh) * | 2020-08-26 | 2021-06-11 | 深圳市明源云链互联网科技有限公司 | 接口测试方法、装置及电子设备 |
CN112433944A (zh) * | 2020-11-25 | 2021-03-02 | 平安普惠企业管理有限公司 | 业务测试方法、装置、计算机设备和存储介质 |
CN112597014A (zh) * | 2020-12-16 | 2021-04-02 | 软通动力信息技术(集团)股份有限公司 | 基于数据驱动的自动化测试方法、装置、介质及电子设备 |
CN112905457A (zh) * | 2021-02-08 | 2021-06-04 | 珠海金山网络游戏科技有限公司 | 软件测试方法及装置 |
CN113312265A (zh) * | 2021-06-08 | 2021-08-27 | 富途网络科技(深圳)有限公司 | 测试用例的应用方法及相关产品 |
CN114020604A (zh) * | 2021-10-22 | 2022-02-08 | 济南浪潮数据技术有限公司 | 一种基于工作流的自动化测试方法及装置 |
CN114116496A (zh) * | 2021-11-30 | 2022-03-01 | 中国平安人寿保险股份有限公司 | 自动化测试方法、装置、设备及介质 |
CN114265774A (zh) * | 2021-12-20 | 2022-04-01 | 北京字节跳动网络技术有限公司 | 一种测试用例的节点信息配置方法及装置 |
CN114490404A (zh) * | 2022-02-10 | 2022-05-13 | 中国农业银行股份有限公司 | 一种测试用例确定方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114968787A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6594534B2 (ja) | テキスト情報処理方法およびデバイス | |
CN108089893B (zh) | 冗余资源的确定方法、装置、终端设备与存储介质 | |
CN108920135B (zh) | 一种自定义业务生成方法、装置、计算机设备及存储介质 | |
CN112181835A (zh) | 自动化测试方法、装置、计算机设备及存储介质 | |
CN113641873B (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN114968787B (zh) | 基于节点关系的测试方法、装置及电子设备 | |
CN110704099B (zh) | 联盟链的构建方法、装置和电子设备 | |
US10289788B1 (en) | System and method for suggesting components associated with an electronic design | |
CN109697234B (zh) | 实体的多属性信息查询方法、装置、服务器和介质 | |
CN109947715B (zh) | 日志告警方法及装置 | |
CN114611039B (zh) | 异步加载规则的解析方法、装置、存储介质和电子设备 | |
CN116126719A (zh) | 接口测试方法、装置、电子设备及存储介质 | |
CN112579472B (zh) | 测试用例的自动生成方法及装置 | |
CN114282586A (zh) | 一种数据标注方法、***和电子设备 | |
CN111401020A (zh) | 一种界面加载方法、***和计算设备 | |
CN113157582A (zh) | 测试脚本执行序列确定方法及装置 | |
CN112214669A (zh) | 家装材料甲醛释放数据处理方法、装置及监控服务器 | |
CN108304433B (zh) | 一种数据搜索方法及其设备、存储介质、服务器 | |
CN109284097A (zh) | 实现复杂数据分析的方法、设备、***及存储介质 | |
CN112181539B (zh) | 文件处理方法、装置、设备及介质 | |
CN113850499B (zh) | 一种数据处理方法、装置、电子设备和存储介质 | |
US20230237420A1 (en) | Business data course management system and business data course management method thereof | |
CN116932340A (zh) | 场景运行方法、装置、计算机设备及存储介质 | |
CN115981621A (zh) | 页面生成方法、装置、设备、介质及产品 | |
CN116303270A (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 |