页面对象查找方法及装置、存储介质、电子设备与流程

文档序号:14175352阅读:195来源:国知局
页面对象查找方法及装置、存储介质、电子设备与流程

本公开涉及页面测试技术领域,具体地,涉及一种页面对象查找方法及装置、计算机可读存储介质、电子设备。



背景技术:

随着信息技术的不断发展,自动化测试技术日益普及。在进行web系统自动化测试时,可以将网页中的各个元素视为一个个对象,先进行对象定位,查找到对象后再进行对象操作,也就是说,如何准确的进行对象定位是自动化测试的首要前提。

web系统的一个url地址对应的页面,即一个web页面通常是由多个实际的页面通过frame组合嵌套形成,每个实际页面可以称为web页面的子页面。对于每个子页面上的对象来说,可以通过对象id等定位标识进行唯一定位,但是当多个子页面组合形成web页面时,可能会出现不同子页面上的对象的定位标识相同的情况。

针对于此,实现自动化测试的脚本中,除了要指定对象的定位标识之外,还要额外指定对象所属页面。如此,虽可通过页面以及定位标识的组合,对对象进行唯一定位,但是这种方式增加了测试脚本与页面代码间的耦合度,导致在页面菜单做了调整、页面组合方式发生变化等情况下,按照原有测试脚本进行自动化测试时,出现对象查找错误,甚至严重情况下出现测试脚本整体不可用的情况。



技术实现要素:

本公开的目的是提供一种页面对象查找方法及装置、计算机可读存储介质及电子设备,有助于提高对象的查找命中率以及查找效率。

为了实现上述目的,第一方面,本公开提供一种页面对象查找方法,包括:

获取待查找对象的定位标识;

从web页面包括的所有子页面中确定出当前页面;

判断是否在所述当前页面中查找到具有所述定位标识的待查找对象;

如果在所述当前页面中查找到所述待查找对象,则维持所述待查找对象所属的子页面为所述当前页面。

可选地,所述方法还包括:

如果未在所述当前页面中查找到所述待查找对象,则获取所述web页面包括的其他子页面;

顺序在所述其他子页面中查找所述待查找对象,并将所述待查找对象所属的子页面,确定为新的当前页面。

可选地,所述当前页面为默认页面,所述默认页面为包含交互对象最多的子页面。

可选地,所述当前页面为上一个待查找对象所属的子页面,且所述子页面不为默认页面,所述默认页面为包含交互对象最多的子页面。

可选地,所述其他子页面包括默认页面和剩余子页面,则

所述顺序在所述其他子页面中查找所述待查找对象,包括:

判断是否在所述默认页面中查找到所述待查找对象;

如果在默认页面中查找到所述待查找对象,则将所述默认页面确定为新的当前页面。

可选地,所述方法还包括:

如果未在默认页面中查找到所述待查找对象,则顺序在所述剩余子页面中查找所述待查找对象。

第二方面,本公开提供一种页面对象查找装置,所述装置包括:

定位标识获取模块,用于获取待查找对象的定位标识;

当前页面确定模块,用于从web页面包括的所有子页面中确定出当前页面;

查找判断模块,用于判断是否在所述当前页面中查找到具有所述定位标识的待查找对象;

当前页面维持模块,用于在所述当前页面中查找到所述待查找对象时,维持所述待查找对象所属的子页面为所述当前页面。

可选地,所述装置还包括:

子页面获取模块,用于未在所述当前页面中查找到所述待查找对象时,获取所述web页面包括的其他子页面;

顺序查找模块,用于顺序在所述其他子页面中查找所述待查找对象,并将所述待查找对象所属的子页面,确定为新的当前页面。

可选地,所述当前页面确定模块确定出的当前页面为默认页面,所述默认页面为包含交互对象最多的子页面。

可选地,所述当前页面确定模块确定出的当前页面为上一个待查找对象所属的子页面,且所述子页面不为默认页面,所述默认页面为包含交互对象最多的子页面。

可选地,所述其他子页面包括默认页面和剩余子页面,则

所述顺序查找模块,用于判断是否在所述默认页面中查找到所述待查找对象;如果在默认页面中查找到所述待查找对象,则将所述默认页面确定为新的当前页面。

可选地,所述顺序查找模块,用于在未在默认页面中查找到所述待查找对象时,顺序在所述剩余子页面中查找所述待查找对象。

第三方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任一项所述方法的步骤。

第四方面,本公开提供一种电子设备,包括:

第三方面所述的计算机可读存储介质;以及

一个或者多个处理器,用于执行所述计算机可读存储介质中的程序。

本公开方案,获取到待查找对象的定位标识,进行对象查找时,可以从web页面包括的所有子页面中确定出当前页面,作为查找入口,如果在当前页面中查找到具有定位标识的待查找对象,考虑到实际操作过程中相邻操作通常在一个区域内进行,也就是说,如果后续还有其他对象,维持当前页面不变,有极大可能在当前页面中查找到下一个对象。基于这种策略实现的对象查找,既有助于提高对象查找命中率以及查找效率,又可在组成web页面的子页面发生变化时,确保原有测试脚本正常运行。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是本公开页面对象查找方法实施例1的流程示意图;

图2是本公开页面对象查找方法实施例2的流程示意图;

图3是本公开页面对象查找装置的结构示意图;

图4是本公开用于页面对象查找的电子设备的结构框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

参见图1,示出了本公开页面对象查找方法实施例1的流程示意图。该方法可以包括以下步骤:

步骤101,获取待查找对象的定位标识。

步骤102,从web页面包括的所有子页面中确定出当前页面。

步骤103,判断是否在所述当前页面中查找到具有所述定位标识的待查找对象。

步骤104,如果在所述当前页面中查找到所述待查找对象,则维持所述待查找对象所属的子页面为所述当前页面。

本公开方案可以根据预设策略进行对象查找,不必如现有技术额外指定对象所属页面,增加测试脚本与页面代码的耦合度。具体地,获得待查找对象的定位标识,如对象的id,可以先从web页面包括的所有子页面中确定出当前页面,作为查找入口,开始在当前页面中进行对象查找。即,预设策略可以为在当前页面中进行对象查找。

作为一种示例,当前页面可以为默认页面。举例来说,可以从web页面包括的所有子页面中指定任一子页面作为默认页面;或者,可以将web页面的主操作区域确定为默认页面,即将包含交互对象最多的子页面确定为默认页面,其中,交互对象可以为输入域、按钮等。

作为一种示例,当前页面可以为上一个待查找对象所属的子页面,且该子页面不为默认页面。具体可参见下文所做介绍,此处暂不详述。

本公开方案对当前页面的具体形式可不做限定,可以结合实际应用需求确定当前页面。

由实际操作过程可知,相邻操作通常在同一区域内进行,因此,如果在当前页面中查找到具有定位标识的待查找对象,可以维持该当前页面不变,即继续将待查找对象所属的子页面作为当前页面,这样,在需要查找下一个待查找对象时,便可将当前页面作为查找入口,有助于提高查找命中率以及查找效率。

如果未在当前页面中查找到具有定位标识的待查找对象,本公开方案还提供页面对象查找方法实施例2,具体可参见图2所示流程示意图。该方法可以包括以下步骤:

步骤201,获取待查找对象的定位标识。

步骤202,从web页面包括的所有子页面中确定出当前页面。

步骤203,判断是否在所述当前页面中查找到具有所述定位标识的待查找对象。

步骤204,如果未在所述当前页面中查找到所述待查找对象,则获取所述web页面包括的其他子页面。

步骤205,顺序在所述其他子页面中查找所述待查找对象,并将所述待查找对象所属的子页面,确定为新的当前页面。

本公开方案中,如果未在当前页面中查找到待查找对象,则可获取web页面包括的其他子页面,并顺序在其他子页面中进行对象查找。即,预设策略可以为当前页面不包含待查找对象时,可以遍历其他子页面,进行对象查找。

同样地,考虑到相邻操作通常在同一区域内进行,在其他子页面中查找到待查找对象后,可以将该待查找对象所属的子页面确定为新的当前页面,在需要查找下一个待查找对象时,可以将该新的当前页面作为查找入口,有助于提高查找命中率以及查找效率。

作为一种示例,web页面可以包括顶部的导航子页面、左侧的菜单子页面、右侧的操作子页面,三个子页面嵌套形成web页面。举例来说,可以将操作子页面确定为默认页面。

作为一种示例,当前页面可以是默认页面,对应于此,其他子页面可以是web页面中除默认页面之外的子页面。如上文所举示例,其他子页面可以为导航子页面、菜单子页面,若在当前页面中未查找到待查找对象,则可顺序在这2个其他子页面中进行对象查找。

作为一种示例,当前页面可以是上一个待查找对象所属的子页面,且该子页面不为默认页面,对应于此,其他子页面可以是默认页面和剩余子页面,其中,剩余子页面可以理解为,web页面中除默认页面和当前页面之外的子页面。结合上文所举示例,若当前页面为菜单子页面,其他子页面则可为默认页面(即操作子页面)、剩余子页面(即导航子页面),若在当前页面中未查找到待查找对象,则可按照默认页面、剩余子页面的顺序,进行对象查找。具体过程可以体现为:

判断是否在所述默认页面中查找到所述待查找对象;如果在默认页面中查找到所述待查找对象,则将所述默认页面确定为新的当前页面;如果未在默认页面中查找到所述待查找对象,则顺序在所述剩余子页面中查找所述待查找对象。

综上,本公开方案考虑到实际操作过程中相邻操作通常在一个区域内进行,故可先从web页面包括的所有子页面中确定出当前页面,并将当前页面作为入口,进行对象查找。如此方案,无需如现有技术额外指定对象所属页面,这样,在组成web页面的子页面发生变化时,原有测试脚本亦可正常运行。此外,采用本公开方案还有助于提高对象查找命中率以及查找效率,由实际测试效果可知,通常有超过90%的可能会在当前页面中找到待查找对象。

下面结合上文所举web页面的示例,再对本公开方案的处理过程进行解释说明。

(1)全局定义默认页面。本示例中,可以将大部分交互对象所属的操作子页面指定为默认页面。

(2)自动化测试定位第一个对象时,可以先在默认页面中进行对象查找。如果找到,则结束第一个对象的查找过程,并将默认页面记录为当前页面。

(3)如果在默认页面中找不到第一个对象,则可自动获取其他子页面列表,并保存起来。本步骤中,其他子页面列表包括:导航子页面、菜单子页面。

(4)遍历其他子页面列表,查找第一个对象。找到便可结束第一个对象的查找过程,同时,还可以将第一个对象实际所属的页面记录为新的当前页面。例如,在菜单子页面中找到第一个对象,则可将菜单子页面记录为新的当前页面。

(5)如果后续还有其他对象,则可继续查找下一个对象。例如,自动化测试定位第二个对象时,可以先在新的当前页面中查找,即在菜单子页面中查找。如果找到,则结束第二个对象的查找过程。

(6)如果在菜单子页面中找不到第二个对象,则可自动获取其他子页面列表。本步骤中,其他子页面列表包括:操作子页面、导航子页面。

(7)遍历其他子页面列表,查找第二个对象。具体地,可以先在默认页面,即操作子页面中查找第二个对象,如果找到,便可结束第二个对象的查找过程,同时,还可以将默认页面记录为新的当前页面。

(8)如果在操作子页面中找不到第二个对象,则可在剩余子页面,即导航子页面中查找第二个对象,找到便可结束第二个对象的查找过程,同时,还可以将导航子页面记录为新的当前页面。

(9)如果后续还有其他对象,则可参照上文所做介绍,按照如下策略进行对象查找:先在当前页面中进行对象查找,找不到则在默认页面中进行对象查找,再找不到则在剩余子页面中进行对象查找。此处不再举例说明。

参见图3,示出了本公开页面对象查找装置的结构示意图。所述装置包括:

定位标识获取模块301,用于获取待查找对象的定位标识;

当前页面确定模块302,用于从web页面包括的所有子页面中确定出当前页面;

查找判断模块303,用于判断是否在所述当前页面中查找到具有所述定位标识的待查找对象;

当前页面维持模块304,用于在所述当前页面中查找到所述待查找对象时,维持所述待查找对象所属的子页面为所述当前页面。

可选地,所述装置还包括:

子页面获取模块,用于未在所述当前页面中查找到所述待查找对象时,获取所述web页面包括的其他子页面;

顺序查找模块,用于顺序在所述其他子页面中查找所述待查找对象,并将所述待查找对象所属的子页面,确定为新的当前页面。

可选地,所述当前页面确定模块确定出的当前页面为默认页面,所述默认页面为包含交互对象最多的子页面。

可选地,所述当前页面确定模块确定出的当前页面为上一个待查找对象所属的子页面,且所述子页面不为默认页面,所述默认页面为包含交互对象最多的子页面。

可选地,所述其他子页面包括默认页面和剩余子页面,则

所述顺序查找模块,用于判断是否在所述默认页面中查找到所述待查找对象;如果在默认页面中查找到所述待查找对象,则将所述默认页面确定为新的当前页面。

可选地,所述顺序查找模块,用于在未在默认页面中查找到所述待查找对象时,顺序在所述剩余子页面中查找所述待查找对象。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图4是根据一示例性实施例示出的一种电子设备400的框图,该电子设备400用于实现页面对象查找。如图4所示,该电子设备400可以包括:处理器401,存储器402,多媒体组件403,输入/输出(i/o)接口404,以及通信组件405。

其中,处理器401用于控制该电子设备400的整体操作,以完成上述的页面对象查找方法中的全部或部分步骤。存储器402用于存储各种类型的数据以支持在该电子设备400的操作,这些数据例如可以包括用于在该电子设备400上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器402可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件403可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器402或通过通信组件405发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口404为处理器401和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件405用于该电子设备400与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件405可以包括:wi-fi模块,蓝牙模块,nfc模块。

在一示例性实施例中,电子设备400可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的页面对象查找方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,例如包括程序指令的存储器402,上述程序指令可由电子设备400的处理器401执行以完成上述的页面对象查找方法。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1