[发明专利]网页元素获取方法及装置有效
申请号: | 201710363817.9 | 申请日: | 2017-05-22 |
公开(公告)号: | CN108959062B | 公开(公告)日: | 2021-06-18 |
发明(设计)人: | 陈航特;林凯杰;张炎辉 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/54 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 朱雅男 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网页 元素 获取 方法 装置 | ||
本发明公开了一种网页元素获取方法及装置,属于自动化测试领域。该方法包括主进程代理接收测试应用程序发送的获取命令,根据获取命令,通过通信通道从子进程代理中获取目标网页元素,主进程代理将获取到的目标网页元素回传至测试应用程序。由于主进程代理是设置在被测应用程序的主进程中的进程代理,子进程代理是设置在被测应用程序的子进程中的进程代理,本发明通过建立主进程代理与子进程代理之间的通信通道使得进程间能够相互通信,即主进程能够通过主进程代理从子进程代理中获取到子进程中的目标网页元素,从而测试应用程序能够接收到主进程代理发送的目标网页元素,进而实现自动化测试。
技术领域
本发明实施例涉及自动化测试领域,特别涉及一种网页元素获取方法及装置。
背景技术
网页(World Wide Web,Web)自动化测试的任务通常是获取网页元素(英文:WebElement),并将该Web元素封装成网页元素对象,然后模拟人工测试步骤对该网页元素对象进行操作。
目前,安卓终端(即具有安卓操作系统的终端)支持Web自动化测试的方式一般采用Instrumentation测试框架注入方式,下面均以测试应用程序和被测应用程序运行在同一个终端上举例说明。如图1所示,测试应用程序100获取被测应用程序110的目标网页元素112的获取方法为:测试应用程序100将RobotiumWeb.js文件102中的javascript(简称:js)脚本注入到被测应用程序110的主进程114后,被测应用程序110执行该js脚本从主进程114中获取目标网页视图(英文:Target WebView)116,再从该目标网页视图116中提取目标网页元素112,并将提取出的目标网页元素112发送至测试应用程序100,使得测试应用程序100通过对获取到该目标网页元素112进行解析并封装成目标网页元素对象104。
在上述的Web自动化测试中,测试应用程序100只能测试被测应用程序110的主进程114。如图2所示,若被测应用程序110将与执行js脚本以及获取目标网页视图116有关的逻辑独立为Web子进程118,该Web子进程118与主进程不共享资源即两个进程之间相互独立。由于主进程114中不存在目标网页视图116,主进程114也无法获取子进程118中的目标网页视图116,因此测试应用程序100将RobotiumWeb.js脚本102注入到主进程114后,无法从被测应用程序110的主进程114中获取目标网页元素,导致自动化测试无法完成。
发明内容
为了解决相关技术中被测应用程序将Web页面有关的逻辑放到子进程实现后,目前的测试框架无法支持的问题,本发明实施例提供了一种网页元素获取方法及装置。所述技术方案如下:
第一方面,提供了一种网页元素获取方法,所述方法包括:
主进程代理接收测试应用程序发送的获取命令,所述主进程代理是设置在被测应用程序的主进程中的进程代理,所述获取命令用于指示所述被测应用程序获取目标Web页面的目标网页元素;
所述主进程代理根据所述获取命令,通过通信通道从子进程代理中获取所述目标网页元素,所述子进程代理是设置在所述被测应用程序的子进程中的进程代理,所述通信通道是根据进程间通信IPC机制建立的所述主进程代理与所述子进程代理之间的通信通道;
所述主进程代理将获取到的所述目标网页元素回传至所述测试应用程序。
第二方面,提供了一种网页元素获取装置,所述装置包括:
接收模块,用于主进程代理接收测试应用程序发送的获取命令,所述主进程代理是设置在被测应用程序的主进程中的进程代理,所述获取命令用于指示所述被测应用程序获取目标Web页面的目标网页元素;
获取模块,用于所述主进程代理根据所述获取命令,通过通信通道从子进程代理中获取所述目标网页元素,所述子进程代理是设置在所述被测应用程序的子进程中的进程代理,所述通信通道是根据进程间通信IPC机制建立的所述主进程代理与所述子进程代理之间的通信通道;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710363817.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:应用功能管理方法、终端以及装置
- 下一篇:一种程序执行的方法和装置