CN113688054A - 页面测试方法、装置、计算机可读存储介质及终端设备 - Google Patents
页面测试方法、装置、计算机可读存储介质及终端设备 Download PDFInfo
- Publication number
- CN113688054A CN113688054A CN202111018205.9A CN202111018205A CN113688054A CN 113688054 A CN113688054 A CN 113688054A CN 202111018205 A CN202111018205 A CN 202111018205A CN 113688054 A CN113688054 A CN 113688054A
- Authority
- CN
- China
- Prior art keywords
- page
- description script
- directed graph
- test description
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明属于人工智能技术领域,尤其涉及一种页面测试方法、装置、计算机可读存储介质及终端设备。所述方法包括:获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。通过本发明,将页面跳转场景的用例覆盖问题转化为了有向图的路径搜索问题,无需人工参与,可以自动生成测试用例进行页面测试,在提升测试效率的同时,实现了对页面跳转场景的完整覆盖。
Description
技术领域
本发明属于人工智能技术领域,尤其涉及一种页面测试方法、装置、计算机可读存储介质及终端设备。
背景技术
在现有的页面测试过程时,往往需要由测试人员人工编写对各种场景进行测试的测试用例。但是,当页面较多,且页面之间存在复杂的页面跳转或切换(例如,多个页面之间的相互跳转,同一页面的反复刷新等等)时,人工编写的效率极低,而且存在较大的不确定性和较差的可复制性,场景覆盖效果不佳,很容易产生场景设计遗漏,进而导致测试验证遗漏,最终造成生产问题。
发明内容
有鉴于此,本发明实施例提供了一种页面测试方法、装置、计算机可读存储介质及终端设备,以解决现有的页面测试方法效率低、场景覆盖效果差等问题。
本发明实施例的第一方面提供了一种页面测试方法,可以包括:
获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;
对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;
对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。
在第一方面的一种具体实现方式中,所述对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图,可以包括:
提取所述页面测试描述脚本中的页面列表;
从所述页面列表中分别提取各个页面描述字段;
针对每个页面描述字段,分别解析出该页面描述字段所对应的页面,以及该页面的各种跳转选项;
根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图。
在第一方面的一种具体实现方式中,所述根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图,可以包括:
将解析出的每个页面均作为有向图的一个节点,将每个页面的每种跳转选项均作为有向图的一条边,边的方向由跳转源页面指向跳转目的页面,生成与所述页面测试描述脚本对应的有向图。
在第一方面的一种具体实现方式中,所述对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合,可以包括:
使用深度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
或
使用广度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合。
在第一方面的一种具体实现方式中,在获取页面测试描述脚本之前,所述页面测试方法还可以包括:
获取页面测试描述脚本配置指令,其中,所述页面测试描述脚本配置指令用于指示对页面测试描述脚本的新建、删除或更新操作;
根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库;
根据所述页面测试描述脚本配置指令在所述目标子库中进行页面测试描述脚本的新建、删除或更新操作。
在第一方面的一种具体实现方式中,所述根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库,可以包括:
提取所述页面测试描述脚本配置指令中的身份标识;
在所述数据库中查找与所述身份标识对应的目标子库。
本发明实施例的第二方面提供了一种页面测试装置,可以包括:
描述脚本获取模块,用于获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;
描述脚本解析模块,用于对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;
路径搜索模块,用于对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
页面测试模块,用于生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。
在第二方面的一种具体实现方式中,所述描述脚本解析模块可以包括:
页面列表提取单元,用于提取所述页面测试描述脚本中的页面列表;
页面描述提取单元,用于从所述页面列表中分别提取各个页面描述字段;
脚本解析单元,用于针对每个页面描述字段,分别解析出该页面描述字段所对应的页面,以及该页面的各种跳转选项;
有向图生成单元,用于根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图。
在第二方面的一种具体实现方式中,所述有向图生成单元具体用于将解析出的每个页面均作为有向图的一个节点,将每个页面的每种跳转选项均作为有向图的一条边,边的方向由跳转源页面指向跳转目的页面,生成与所述页面测试描述脚本对应的有向图。
在第二方面的一种具体实现方式中,所述路径搜索模块可以包括:
第一路径搜索单元,用于使用深度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
或
第二路径搜索单元,用于使用广度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合。
在第二方面的一种具体实现方式中,所述页面测试装置还可以包括:
配置指令获取模块,用于获取页面测试描述脚本配置指令,其中,所述页面测试描述脚本配置指令用于指示对页面测试描述脚本的新建、删除或更新操作;
子库查找模块,用于根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库;
脚本操作模块,用于根据所述页面测试描述脚本配置指令在所述目标子库中进行页面测试描述脚本的新建、删除或更新操作。
在第二方面的一种具体实现方式中,所述子库查找模块可以包括:
身份标识提取单元,用于提取所述页面测试描述脚本配置指令中的身份标识;
目标子库查找单元,用于在所述数据库中查找与所述身份标识对应的目标子库。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种页面测试方法的步骤。
本发明实施例的第四方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种页面测试方法的步骤。
本发明实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述任一种页面测试方法的步骤。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。通过本发明实施例,将页面跳转场景的用例覆盖问题转化为了有向图的路径搜索问题,无需人工参与,可以自动生成测试用例进行页面测试,在提升测试效率的同时,实现了对页面跳转场景的完整覆盖。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例中一种页面测试方法的一个实施例流程图;
图2为通过与测试人员的交互来进行页面测试描述脚本的配置的示意流程图;
图3为本发明实施例中一种页面测试装置的一个实施例结构图;
图4为本发明实施例中一种终端设备的示意框图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本发明实施例通过对预先设置的页面测试描述脚本的解析,将页面跳转场景的用例覆盖问题转化为了有向图的路径搜索问题,从而可以由终端设备自动生成测试用例并进行页面测试,在提升测试效率的同时,实现了对页面跳转场景的完整覆盖
请参阅图1,本发明实施例中一种页面测试方法的一个实施例可以包括:
步骤S101、获取页面测试描述脚本。
所述页面测试描述脚本可以由测试人员预先进行编辑,其中可以包括待测试的各个页面,以及各个页面的各种跳转选项。
当需要进行页面测试时,执行页面测试的终端设备可以从预设的数据库中获取所述页面测试描述脚本。
所述页面测试描述脚本的具体格式可以根据实际情况进行设置,在本发明实施例的一种具体实现中,所述页面测试描述脚本优选采用YML格式,YML是一种直观的能够被电脑识别的数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的,可以被多种不同的编程语言程序导入,是一种专门用来写配置文件的语言。
如下所示即为采用YML格式的一个页面测试描述脚本的示例:
其中,scriptName为页面测试描述脚本的名称,nodeList为页面列表,在该列表中包括了若干个页面描述字段,每个页面描述字段均用于描述某一个特定的页面的各种跳转选项。以任意一个页面描述字段为例,其中,nodeId为该页面描述字段所对应的页面,intentConf为该页面的各种跳转选项,其中包括若干个nextNode,每个nextNode即为该页面的一种跳转选项。
参见上述的页面测试描述脚本示例,第一个页面描述字段的nodeId为开始,在其intentConf中包括了以下4个nextNode:页面#1、页面#2、页面#3、页面#4,即表示测试开始时存在4种跳转选项,即分别跳转至页面#1、页面#2、页面#3或页面#4。第二个页面描述字段的nodeId为页面#1,在其intentConf中包括了以下4个nextNode:页面#3、页面#4、页面#5、页面#6,即表示对于页面#1而言存在4种跳转选项,即分别跳转至页面#3、页面#4、页面#5或页面#6,后面的各个页面描述字段以此类推,此处不再赘述。
步骤S102、对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图。
有向图为带有方向的图结构,有向图中可以包括若干个节点,节点之间通过带有方向的边进行连接。例如,若节点1和节点2之间存在一条由节点1指向节点2的边,则表示可以由节点1到达节点2,而不能从节点2到达节点1。
终端设备在对所述页面测试描述脚本进行解析时,可以首先提取所述页面测试描述脚本中的页面列表,并从所述页面列表中分别提取各个页面描述字段;然后,针对每个页面描述字段,分别解析出该页面描述字段所对应的页面,以及该页面的各种跳转选项。
终端设备在解析出这些内容之后,则可以根据这些内容生成与所述页面测试描述脚本对应的有向图。具体地,终端设备将解析出的每个页面均作为有向图的一个节点,将每个页面的每种跳转选项均作为有向图的一条边,边的方向由跳转源页面指向跳转目的页面(例如,当A页面跳转至B页面时,A页面为跳转源页面,B页面为跳转目的页面,边的方向由A页面指向B页面),从而生成与所述页面测试描述脚本对应的有向图。在一些情况下,某些节点的边可能会形成一个循环的环状结构,此时的有向图即为有向带环图。
参见上述的页面测试描述脚本示例,首先生成以下各个节点:开始、页面#1、页面#2、页面#3、页面#4、……,测试开始时存在4种跳转选项,即分别跳转至页面#1、页面#2、页面#3或页面#4,则可以生成4条边,分别为:从开始节点指向页面#1节点的边,从开始节点指向页面#2节点的边,从开始节点指向页面#3节点的边,从开始节点指向页面#4节点的边。对于页面#1而言存在4种跳转选项,即分别跳转至页面#3、页面#4、页面#5或页面#6,则可以生成4条边,分别为:从页面#1节点指向页面#3节点的边,从页面#1节点指向页面#4节点的边,从页面#1节点指向页面#5节点的边,从页面#1节点指向页面#6节点的边,后面的各个节点以此类推,此处不再赘述。
需要注意的是,在对某一页面进行刷新的场景下,即相当于由该页面仍跳转到该页面,在有向图中可生成一条由该页面节点指向自身的边。
步骤S103、对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合。
在本发明实施例中,终端设备可以根据实际情况选择现有技术中的任意一种路径搜索算法对所述有向图中的路径进行遍历,可以包括但不限于深度优先搜索算法(DepthFirst Search,DFS)以及广度优先搜索算法(Breadth First Search,BFS)。
需要注意的是,若所述有向图为有向带环图,在遍历搜索过程中可能会出现递归死循环,为了避免这一问题,可以预先设置环递归阈值,当循环次数大于所述环递归阈值时,即终止循环过程。所述递归阈值的具体取值可以根据实际情况进行设置,例如,可以将其设置为3、5、10或者其它取值。
在遍历搜索的过程中,每得到一条路径,即可将其添加到路径集合中,该路径集合在初始时为空,遍历搜索完成后,该路径集合中即包括了所述有向图中的所有路径。
步骤S104、生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。
所述路径集合中的每一条路径均可生成一个测试用例,例如,若某路径为:开始节点→节点1→节点2→节点3→节点4,而其中,节点1为页面#1的节点,节点2为页面#2的节点,节点3为页面#3的节点,节点4为页面#4的节点,则终端设备生成的测试用例可以包括以下几个测试步骤:
第一步:测试开始,打开页面#1;
第二步:从页面#1跳转到页面#2;
第三步:从页面#2跳转到页面#3;
第四步:从页面#3跳转到页面#4,测试结束。
在得到与每条路径对应的测试用例之后,这些测试用例所组成的集合即可完整覆盖所有的页面跳转场景,终端设备使用该测试用例集合进行页面测试能够达到最佳的页面测试效果。
通过本发明实施例,将页面跳转场景的用例覆盖问题转化为了有向图的路径搜索问题,无需人工参与,可以由终端设备自动生成测试用例,在提升测试效率的同时,实现了对页面跳转场景的完整覆盖。
进一步地,在本发明实施例的另一种具体实现方式中,终端设备预先可以通过与测试人员的交互来进行所述页面测试描述脚本的配置,其执行的具体步骤可以包括:
步骤S201、获取页面测试描述脚本配置指令。
所述页面测试描述脚本配置指令用于指示对页面测试描述脚本的新建、删除或更新操作。
在本发明实施例中,页面测试描述脚本可以由测试人员在终端设备上进行配置,进行的配置可以包括但不限于新建页面测试描述脚本、删除页面测试描述脚本及更新页面测试描述脚本。
具体地,测试人员可以通过自己的身份标识(ID)登录预设的页面测试描述脚本配置交互界面,并在交互界面上输入对页面测试描述脚本的配置信息。
在新建页面测试描述脚本时,测试人员在该交互界面上填写所要建立的页面测试描述脚本的脚本标识,其中,脚本标识为页面测试描述脚本的标识,同一测试人员的各个不同页面测试描述脚本的脚本标识各不相同。测试人员在该交互界面上填写scriptName以及nodeList等配置信息,当测试人员在交互界面上完成信息填写之后,点击生成按钮,即向终端设备发出页面测试描述脚本配置指令,在该指令中携带了身份标识以及测试人员在交互界面上所填写的配置信息。
当测试人员进行删除页面测试描述脚本时,则可以在交互界面上选取所需删除的页面测试描述脚本,点击删除按钮,即向终端设备发出页面测试描述脚本配置指令,在该指令中携带了身份标识以及所需删除的页面测试描述脚本的脚本标识。
当测试人员进行更新页面测试描述脚本时,则可以在交互界面上选取所需更新的页面测试描述脚本,并对页面测试描述脚本中的信息进行更新操作,完成后,点击更新按钮,即向终端设备发出页面测试描述脚本配置指令,在该指令中携带了身份标识以及测试人员在交互界面上所填写的页面测试描述脚本更新信息。
步骤S202、根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库。
在本发明实施例中,为了满足测试人员自由定制的需求,并避免不同测试人员数据之间的相互关联干扰,提高数据的安全性,可以分别为各个测试人员在数据库中设置对应的子库,各个子库之间彼此独立,互不相关。
测试人员与子库之间的对应关系可以根据实际情况进行动态配置,当有新的测试人员时,可以在数据库中未使用的空间中为该测试人员分配对应的使用空间,也即与该测试人员对应的子库;当测试人员不再需要服务时,可以解除测试人员与子库之间的对应关系,并释放掉与该测试人员对应的子库所使用的数据库空间;当测试人员对应的子库空间不足时,可以为其进行子库扩容,在数据库中未使用的空间中为该测试人员分配新增的使用空间。本发明实施例中的子库是一个逻辑上的概念,而非物理上的概念,某一测试人员所对应的子库不必是一段连续的物理存储空间,而可以是由多段不连续的物理存储空间所组成的集合。
假设该子库共由N段不连续的物理存储空间组成,分别记为存储空间段1、存储空间段2、…、存储空间段N,则在存储空间段1的段尾存储了指向存储空间段2的段头的指针,在存储空间段2的段尾存储了指向存储空间段3的段头的指针,…,以此类推,从而形成一个在逻辑上连续的子库。
终端设备在接收到页面测试描述脚本配置指令之后,可以提取所述页面测试描述脚本配置指令中的身份标识,并在所述数据库中查找与所述身份标识对应的目标子库。
步骤S203、根据所述页面测试描述脚本配置指令在所述目标子库中进行页面测试描述脚本的新建、删除或更新操作。
具体地,若为新建页面测试描述脚本,则终端设备根据该页面测试描述脚本配置指令生成一个新的页面测试描述脚本。
进一步地,在子库中还可以预先设置有测试人员的主表,用于记录该子库中的所有的页面测试描述脚本的信息,这些信息包括但不限于脚本标识、页面测试描述脚本的名称、版本、存储地址等。主表与各个页面测试描述脚本通过脚本标识进行关联。
在新建页面测试描述脚本的过程中,可以在主表中新增一条页面测试描述脚本配置记录,记录下该页面测试描述脚本的脚本标识、页面测试描述脚本的名称、版本、存储地址等信息,以便于后续根据主表快速查询到该页面测试描述脚本。
若为删除页面测试描述脚本,终端设备从配置指令中提取出脚本标识,并在主表中查询与该脚本标识对应的页面测试描述脚本配置记录,从查询到的页面测试描述脚本配置记录中获取存储地址,通过存储地址搜索到对应的页面测试描述脚本,并将该页面测试描述脚本进行删除操作。在删除完成后,将主表中与该页面测试描述脚本对应的页面测试描述脚本配置记录也进行删除操作。
若为更新页面测试描述脚本,终端设备从配置指令中提取出脚本标识,并在主表中查询与该报告名称对应的页面测试描述脚本配置记录,从查询到的页面测试描述脚本配置记录中获取存储地址,通过存储地址搜索到对应的页面测试描述脚本,在确定要更新的页面测试描述脚本之后,根据页面测试描述脚本配置指令对页面测试描述脚本进行信息更新。在更新完成后,将主表中该页面测试描述脚本的配置记录也进行更新操作,如将版本信息进行更新。
通过自定义配置策略,利用终端设备上的页面测试描述脚本配置交互界面来获取测试人员对页面测试描述脚本的配置需求,并根据该配置需求在对应的数据库子库中进行相应的页面测试描述脚本配置,从而可以实现页面测试描述脚本的动态配置,满足测试人员对测试内容的自由定制需求。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的一种页面测试方法,图3示出了本发明实施例提供的一种页面测试装置的一个实施例结构图。
本实施例中,一种页面测试装置可以包括:
描述脚本获取模块301,用于获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;
描述脚本解析模块302,用于对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;
路径搜索模块303,用于对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
页面测试模块304,用于生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。
在本发明实施例的一种具体实现方式中,所述描述脚本解析模块可以包括:
页面列表提取单元,用于提取所述页面测试描述脚本中的页面列表;
页面描述提取单元,用于从所述页面列表中分别提取各个页面描述字段;
脚本解析单元,用于针对每个页面描述字段,分别解析出该页面描述字段所对应的页面,以及该页面的各种跳转选项;
有向图生成单元,用于根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图。
在本发明实施例的一种具体实现方式中,所述有向图生成单元具体用于将解析出的每个页面均作为有向图的一个节点,将每个页面的每种跳转选项均作为有向图的一条边,边的方向由跳转源页面指向跳转目的页面,生成与所述页面测试描述脚本对应的有向图。
在本发明实施例的一种具体实现方式中,所述路径搜索模块可以包括:
第一路径搜索单元,用于使用深度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
或
第二路径搜索单元,用于使用广度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合。
在本发明实施例的一种具体实现方式中,所述页面测试装置还可以包括:
配置指令获取模块,用于获取页面测试描述脚本配置指令,其中,所述页面测试描述脚本配置指令用于指示对页面测试描述脚本的新建、删除或更新操作;
子库查找模块,用于根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库;
脚本操作模块,用于根据所述页面测试描述脚本配置指令在所述目标子库中进行页面测试描述脚本的新建、删除或更新操作。
在本发明实施例的一种具体实现方式中,所述子库查找模块可以包括:
身份标识提取单元,用于提取所述页面测试描述脚本配置指令中的身份标识;
目标子库查找单元,用于在所述数据库中查找与所述身份标识对应的目标子库。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图4示出了本发明实施例提供的一种终端设备的示意框图,为了便于说明,仅示出了与本发明实施例相关的部分。
在本实施例中,所述终端设备4可以是桌上型计算机、笔记本、掌上电脑等计算设备。该终端设备4可包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机可读指令42,例如执行上述的页面测试方法的计算机可读指令。所述处理器40执行所述计算机可读指令42时实现上述各个页面测试方法实施例中的步骤,例如图1所示的步骤S101至S104。或者,所述处理器40执行所述计算机可读指令42时实现上述各装置实施例中各模块/单元的功能,例如图3所示模块301至304的功能。
示例性的,所述计算机可读指令42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令42在所述终端设备4中的执行过程。
所述处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述终端设备4的内部存储单元,例如终端设备4的硬盘或内存。所述存储器41也可以是所述终端设备4的外部存储设备,例如所述终端设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述终端设备4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机可读指令以及所述终端设备4所需的其它指令和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机可读指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储计算机可读指令的介质。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种页面测试方法,其特征在于,包括:
获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;
对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;
对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。
2.根据权利要求1所述的页面测试方法,其特征在于,所述对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图,包括:
提取所述页面测试描述脚本中的页面列表;
从所述页面列表中分别提取各个页面描述字段;
针对每个页面描述字段,分别解析出该页面描述字段所对应的页面,以及该页面的各种跳转选项;
根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图。
3.根据权利要求2所述的页面测试方法,其特征在于,所述根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图,包括:
将解析出的每个页面均作为有向图的一个节点,将每个页面的每种跳转选项均作为有向图的一条边,边的方向由跳转源页面指向跳转目的页面,生成与所述页面测试描述脚本对应的有向图。
4.根据权利要求1所述的页面测试方法,其特征在于,所述对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合,包括:
使用深度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
或
使用广度优先搜索算法对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合。
5.根据权利要求1至4中任一项所述的页面测试方法,其特征在于,在获取页面测试描述脚本之前,还包括:
获取页面测试描述脚本配置指令,其中,所述页面测试描述脚本配置指令用于指示对页面测试描述脚本的新建、删除或更新操作;
根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库;
根据所述页面测试描述脚本配置指令在所述目标子库中进行页面测试描述脚本的新建、删除或更新操作。
6.根据权利要求5所述的页面测试方法,其特征在于,所述根据所述页面测试描述脚本配置指令在预设的数据库中查找对应的目标子库,包括:
提取所述页面测试描述脚本配置指令中的身份标识;
在所述数据库中查找与所述身份标识对应的目标子库。
7.一种页面测试装置,其特征在于,包括:
描述脚本获取模块,用于获取页面测试描述脚本,其中,所述页面测试描述脚本中包括待测试的各个页面,以及各个页面的各种跳转选项;
描述脚本解析模块,用于对所述页面测试描述脚本进行解析,生成与所述页面测试描述脚本对应的有向图;
路径搜索模块,用于对所述有向图中的路径进行遍历搜索,得到所述有向图的路径集合;
页面测试模块,用于生成与所述路径集合对应的测试用例集合,并使用所述测试用例集合对各个页面的各种跳转选项进行测试。
8.根据权利要求7所述的页面测试装置,其特征在于,所述描述脚本解析模块包括:
页面列表提取单元,用于提取所述页面测试描述脚本中的页面列表;
页面描述提取单元,用于从所述页面列表中分别提取各个页面描述字段;
脚本解析单元,用于针对每个页面描述字段,分别解析出该页面描述字段所对应的页面,以及该页面的各种跳转选项;
有向图生成单元,用于根据解析出的各个页面,以及各个页面的各种跳转选项,生成与所述页面测试描述脚本对应的有向图。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如权利要求1至6中任一项所述的页面测试方法的步骤。
10.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至6中任一项所述的页面测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111018205.9A CN113688054A (zh) | 2021-08-31 | 2021-08-31 | 页面测试方法、装置、计算机可读存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111018205.9A CN113688054A (zh) | 2021-08-31 | 2021-08-31 | 页面测试方法、装置、计算机可读存储介质及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113688054A true CN113688054A (zh) | 2021-11-23 |
Family
ID=78584632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111018205.9A Pending CN113688054A (zh) | 2021-08-31 | 2021-08-31 | 页面测试方法、装置、计算机可读存储介质及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688054A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729285A (zh) * | 2012-10-11 | 2014-04-16 | 腾讯科技(深圳)有限公司 | 一种网页测试方法、设备及系统 |
CN104423961A (zh) * | 2013-09-11 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 一种生成测试脚本的方法及系统 |
CN106649100A (zh) * | 2016-11-16 | 2017-05-10 | 福建天晴数码有限公司 | 一种自动化测试方法及系统 |
CN109558225A (zh) * | 2018-10-30 | 2019-04-02 | 北京奇艺世纪科技有限公司 | 一种页面切换方法及装置 |
CN112965916A (zh) * | 2021-04-09 | 2021-06-15 | 中国工商银行股份有限公司 | 页面测试方法、页面测试装置、电子设备及可读存储介质 |
-
2021
- 2021-08-31 CN CN202111018205.9A patent/CN113688054A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729285A (zh) * | 2012-10-11 | 2014-04-16 | 腾讯科技(深圳)有限公司 | 一种网页测试方法、设备及系统 |
CN104423961A (zh) * | 2013-09-11 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 一种生成测试脚本的方法及系统 |
CN106649100A (zh) * | 2016-11-16 | 2017-05-10 | 福建天晴数码有限公司 | 一种自动化测试方法及系统 |
CN109558225A (zh) * | 2018-10-30 | 2019-04-02 | 北京奇艺世纪科技有限公司 | 一种页面切换方法及装置 |
CN112965916A (zh) * | 2021-04-09 | 2021-06-15 | 中国工商银行股份有限公司 | 页面测试方法、页面测试装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107957957B (zh) | 测试用例的获取方法和装置 | |
CN111045655B (zh) | 一种页面渲染的方法、装置、渲染服务器和存储介质 | |
CN109800258B (zh) | 数据文件部署方法、装置、计算机设备及存储介质 | |
CN106502745B (zh) | 一种函数调用方法和装置 | |
CN109062780B (zh) | 自动化测试用例的开发方法及终端设备 | |
CN109857803B (zh) | 数据同步方法、装置、设备、系统及计算机可读存储介质 | |
CN109522228B (zh) | 接口自动化测试数据构造方法、装置、平台及存储介质 | |
CN102665231B (zh) | 一种lte系统自动生成参数配置文件的方法 | |
CN112100071B (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN113986241B (zh) | 一种基于知识图谱的业务规则的配置方法以及装置 | |
CN112328489B (zh) | 测试用例生成方法、装置、终端设备和存储介质 | |
CN109246163A (zh) | 终端信息识别方法及装置 | |
CN114116065B (zh) | 获取拓扑图数据对象的方法、装置、及电子设备 | |
CN111581271A (zh) | 接口参数确定方法、装置、计算机设备和存储介质 | |
CN108170602B (zh) | 一种测试用例生成方法、装置、终端及计算机可读介质 | |
CN112559525B (zh) | 数据检查系统、方法、装置和服务器 | |
CN108446224B (zh) | 移动端上应用程序的性能分析方法、存储介质 | |
CN107729510B (zh) | 信息交互方法、信息交互终端及存储介质 | |
CN115994085A (zh) | 代码覆盖率的测试处理方法、装置、设备及存储介质 | |
CN103530369A (zh) | 一种去重方法及系统 | |
CN111506573B (zh) | 数据库表分区方法、装置、计算机设备及存储介质 | |
CN113688054A (zh) | 页面测试方法、装置、计算机可读存储介质及终端设备 | |
KR20200103133A (ko) | 하둡 기반의 빅데이터 시스템에서 etl 절차를 수행하는 방법 및 장치 | |
CN115757174A (zh) | 一种数据库的差异检测方法及装置 | |
CN110222105B (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 |