【技术实现步骤摘要】
网页元素获取方法及装置
本专利技术实施例涉及自动化测试领域,特别涉及一种网页元素获取方法及装置。
技术介绍
网页(WorldWideWeb,Web)自动化测试的任务通常是获取网页元素(英文:WebElement),并将该Web元素封装成网页元素对象,然后模拟人工测试步骤对该网页元素对象进行操作。目前,安卓终端(即具有安卓操作系统的终端)支持Web自动化测试的方式一般采用Instrumentation测试框架注入方式,下面均以测试应用程序和被测应用程序运行在同一个终端上举例说明。如图1所示,测试应用程序100获取被测应用程序110的目标网页元素112的获取方法为:测试应用程序100将RobotiumWeb.js文件102中的javascript(简称:js)脚本注入到被测应用程序110的主进程114后,被测应用程序110执行该js脚本从主进程114中获取目标网页视图(英文:TargetWebView)116,再从该目标网页视图116中提取目标网页元素112,并将提取出的目标网页元素112发送至测试应用程序100,使得测试应用程序100通过对获取到该目标网页元素112 ...
【技术保护点】
1.一种网页元素获取方法,其特征在于,所述方法包括:主进程代理接收测试应用程序发送的获取命令,所述主进程代理是设置在被测应用程序的主进程中的进程代理,所述获取命令用于指示所述被测应用程序获取目标Web页面的目标网页元素;所述主进程代理根据所述获取命令,通过通信通道从子进程代理中获取所述目标网页元素,所述子进程代理是设置在所述被测应用程序的子进程中的进程代理,所述通信通道是根据进程间通信IPC机制建立的所述主进程代理与所述子进程代理之间的通信通道;所述主进程代理将获取到的所述目标网页元素回传至所述测试应用程序。
【技术特征摘要】
1.一种网页元素获取方法,其特征在于,所述方法包括:主进程代理接收测试应用程序发送的获取命令,所述主进程代理是设置在被测应用程序的主进程中的进程代理,所述获取命令用于指示所述被测应用程序获取目标Web页面的目标网页元素;所述主进程代理根据所述获取命令,通过通信通道从子进程代理中获取所述目标网页元素,所述子进程代理是设置在所述被测应用程序的子进程中的进程代理,所述通信通道是根据进程间通信IPC机制建立的所述主进程代理与所述子进程代理之间的通信通道;所述主进程代理将获取到的所述目标网页元素回传至所述测试应用程序。2.根据权利要求1所述的方法,其特征在于,所述主进程代理根据所述获取命令,通过通信通道从子进程代理中获取所述目标网页元素,包括:所述主进程代理将所述获取命令通过所述通信通道发送至所述子进程代理;所述子进程代理根据所述获取命令,调用插件程序获取所述目标网页元素,所述插件程序是运行在所述子进程中的插件程序;所述子进程代理将获取到的所述目标网页元素通过所述通信通道回传至所述主进程代理;所述主进程代理接收所述子进程代理回传的所述目标网页元素。3.根据权利要求2所述的方法,其特征在于,所述子进程代理根据所述获取命令,调用插件程序获取所述目标网页元素,包括:所述子进程代理将所述获取命令转发至所述插件程序;所述插件程序根据所述获取命令获取目标网页视图,并从所述目标网页视图中提取所述目标网页元素,所述目标网页视图是用于加载显示所述目标Web页面的控件;所述插件程序将提取出的所述目标网页元素回传至所述子进程代理;所述子进程代理接收所述插件程序回传的所述目标网页元素。4.根据权利要求3所述的方法,其特征在于,当所述目标Web页面对应的浏览器内核为操作系统提供的内核时,所述插件程序根据所述获取命令获取目标网页视图,并从所述目标网页视图中提取所述目标网页元素,包括:所述插件程序根据所述获取命令获取第一网页视图,对所述第一网页视图执行第一js脚本得到所述目标网页元素,所述第一js脚本用于从所述第一网页视图中提取所述目标网页元素。5.根据权利要求3所述的方法,其特征在于,当所述目标Web页面对应的浏览器内核为第三方定义的内核时,所述插件程序根据所述获取命令获取目标网页视图,并从所述目标网页视图中提取所述目标网页元素,包括:所述插件程序根据所述获取命令获取第三方定义的第二网页视图,对所述第二网页视图执行第二js脚本得到所述目标网页元素,所述第二js脚本用于从所述第二网页视图中提取所述目标网页元素。6.根据权利要求1至5任一所述的方法,其特征在于,所述方法,还包括:当检测到未安装所述插件程序时,根据指定目录中插件安装包安装所述插件程序;将所述插件程序的默认类加载器设置为第三方类加载器,所述第三方类加载器是第三方软件开发工具包SDK提供的基于所述默认类加载器扩展的类加载器,所述第三方SDK是集成在所述目标Web页面中的SDK。7.根据权利要求1至5任一所述的方法,其特征在于,所述主进程代理将获取到的所述目标网页元素回传至所述测试应用程序,包括:所述主进程代理...
【专利技术属性】
技术研发人员:陈航特,林凯杰,张炎辉,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。