[发明专利]软件界面特征提取方法、装置及电子设备有效
申请号: | 201910130738.2 | 申请日: | 2019-02-21 |
公开(公告)号: | CN109783139B | 公开(公告)日: | 2020-12-04 |
发明(设计)人: | 林涛;谢应涛;银虹宇;吴芝明 | 申请(专利权)人: | 四川大学 |
主分类号: | G06F8/74 | 分类号: | G06F8/74;G06F8/72 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙) 11371 | 代理人: | 安卫静 |
地址: | 610000 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 界面 特征 提取 方法 装置 电子设备 | ||
本发明提供了一种软件界面特征提取方法、装置及电子设备,涉及软件代码复用的技术领域,其中,该方法包括:获取软件界面的代码,基于该软件界面的代码创建软件界面代码树,并提取软件界面代码树中各个节点的属性信息,该软件界面代码树中的叶子节点表示界面可见元素,非叶子节点表示界面不可见元素;提取软件界面代码树中的路径,根据节点的属性信息,对该路径中的各个节点设置相应的权重值;将每条路径的信息与该路径中各个节点的权重值关联存储,得到软件界面的路径组成集合;将软件界面的路径组成集合作为软件界面的特征,通过该方式可以有效提高软件界面复用时检索代码的准确度。
技术领域
本发明涉及软件代码复用技术领域,尤其是涉及一种软件界面特征提取方法、装置及电子设备。
背景技术
随着软件数量快速增长,对软件开发的需求也快速增加,软件开发人员如何节省时间,从现有的软件代码中快速找到能进行复用的代码有很大的难度。目前,已经有相应的软件界面复用技术,可以通过提取软件界面的代码的结构性特征来表示软件的界面,从而达到检索软件界面代码,进而复用界面代码。
然而,现有的软件界面代码特征提取方法没有考虑界面代码能可视化的特殊性,造成了提取的界面代码特征不能很好的表示软件的界面,从而导致软件复用时检索软件界面的准确度偏低。
发明内容
有鉴于此,本发明实施例的目的在于提供一种软件界面特征提取方法、装置及电子设备,从而提高了软件界面复用时检索代码的准确度。
第一方面,本发明实施例提供了一种软件界面特征提取方法,包括:
获取软件界面的代码,基于所述软件界面的代码创建软件界面代码树,并提取所述软件界面代码树中各个节点的属性信息,所述软件界面代码树中的叶子节点表示界面可见元素;非叶子节点表示界面不可见元素;
提取所述软件界面代码树中的路径,根据所述节点的属性信息,对所述路径中的各个节点设置相应的权重值;
将每条路径的信息与该路径中各个节点的权重值关联存储,得到所述软件界面的路径组成集合;
将所述软件界面的路径组成集合作为所述软件界面的特征。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,基于所述软件界面的代码创建软件界面代码树的步骤,包括:
遍历软件界面的代码;
提取所述软件界面的代码中界面组成元素的代码;
根据所述界面组成元素的代码创建软件界面代码树。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述权重值包括节点自身的权重值、叶子节点属性的权重值以及所述节点所属的路径对应的权重值。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,对所述路径中的各个节点设置相应的权重值的步骤,包括:
对所述路径中的各个节点设置所述节点自身的权重值;
根据所述节点在所述软件界面的代码中出现的顺序,设置所述节点所在的路径对应的权重值;
判断所述节点是否为叶子节点,如果是,则对所述节点设置叶子节点属性的权重值。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,还包括:
基于获取的所述软件界面的特征,检索目标界面;
获取所述目标界面的代码。
第二方面,本发明实施例还提供一种软件界面特征提取装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川大学,未经四川大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910130738.2/2.html,转载请声明来源钻瓜专利网。