[发明专利]一种Web应用跨设备捕捉‑回放方法有效
申请号: | 201510014962.7 | 申请日: | 2015-01-12 |
公开(公告)号: | CN104598232B | 公开(公告)日: | 2018-02-13 |
发明(设计)人: | 黄罡;刘譞哲;黄震;马郓 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙)11200 | 代理人: | 司立彬 |
地址: | 100871 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 web 应用 设备 捕捉 回放 方法 | ||
技术领域
本发明是一种对Web应用进行跨设备的动作捕捉与回放的方法,属于软件技术领域,适用于Web辅助工具开发及软件测试。
背景技术
在软件工程领域中,应用程序的动作捕捉与回放一直是个热门的话题。随着互联网的快速发展,应用程序的形态也变得多种多样,近些年来,基于Web技术、通过浏览器即可使用的应用程序越来越多,我们称之为Web应用。Web应用具有跨平台、免安装、数据同步性高等特点,是当下比较热门的软件开发方向之一。对Web应用进行动作捕捉与回放,成为了软件工程领域新的研究热点。
如今,已经有研究人员提出了针对JavaScript应用进行确定性的动作捕捉、回放的技术。然而,Web应用往往有着内容更新较快的特点,如何跨设备地进行Web应用的动作捕捉,并在内容有变更的情况下进行回放,是一个亟待解决的重要问题。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种针对Web应用进行跨设备的动作捕捉和回放的方法,其核心思想是通过JavaScript代码,对浏览器中Web应用的DOM(文档对象模型)事件进行记录与回放。事件流会以XML文件的形式保存为一个脚本,回放脚本时,会将网页中的实时内容与记录的内容进行模糊匹配,来用于辅助回放,以便在内容发生细微变化时,回放仍可以顺利进行。此外,脚本可以被编辑和分享,可以用于Web应用测试或者代替人力进行重复性工作,因此该技术适用范围较大。
本发明的技术方案为:
一种Web应用跨设备捕捉-回放方法,其步骤为:
1)在用户设备A、用户设备B上分别安装一客户端;其中,所述客户端包括前台模块和后台模块,所述前台模块通过所在用户设备的浏览器注入到的每一Web页面中;
2)用户设备A的前台模块根据当前Web应用的DOM文档树,对该Web应用中每一事件对应的DOM结点进行记录并保存到一脚本,然后通过后台模块将该脚本发送给服务器;所述记录信息包括:DOM结点位置信息、DOM结点上下文信息、DOM结点本身的信息;
3)当在用户设备B上回放该Web应用时,用户设备B的后台模块从该服务器获取该脚本,然后根据该脚本中的记录信息将该Web应用所在网页中的实时内容与该脚本记录的内容进行模糊匹配,回放该Web应用。
进一步的,所述前台模块在每个页面的设定window对象上分别注册或绑定一对应的事件处理函数;当设定window对象上有事件发生时,对应的事件处理函数将发生事件的DOM结点进行记录。
进一步的,所述DOM结点本身的相关信息包括结点的属性信息、事件的名称、当前网页的URL和结点内部的语义内容;所述DOM结点位置信息包括从发生事件的DOM结点开始到DOM文档树根结点的索引位置信息;所述DOM结点的上下文信息为该结点周围的语义信息。
进一步的,所述DOM结点的上下文信息为其祖父结点的所有文本内容。
进一步的,所述模糊匹配的方法为:对于该脚本中的每一DOM结点,首先根据DOM结点的语义信息过滤掉该Web应用所在网页实时内容中语义内容差别大于设定阈值的结点;然后根据DOM结点本身的属性信息过滤掉该Web应用所在网页实时内容中结点属性差异大于设定阈值的结点;然后计算该Web应用所在网页实时内容中剩余结点与该脚本中当前待匹配DOM结点的编辑距离,选取编辑距离最小的结点作为匹配结点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510014962.7/2.html,转载请声明来源钻瓜专利网。