[发明专利]控件遍历方法及装置、分析系统在审
| 申请号: | 201710240791.9 | 申请日: | 2017-04-13 |
| 公开(公告)号: | CN108733551A | 公开(公告)日: | 2018-11-02 |
| 发明(设计)人: | 王静;路晔绵;王继刚;孙默;苏璞睿;应凌云 | 申请(专利权)人: | 中兴通讯股份有限公司;北京工业大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 江舟;董文倩 |
| 地址: | 518057 广*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 控件 遍历 遍历处理 代码覆盖率 分析系统 控件类型 遍历过程 分析处理 交互事件 应用界面 应用运行 分析 | ||
1.一种控件遍历方法,其特征在于,包括:
对应用运行时当前界面上的控件进行遍历处理,其中,所述遍历处理包括:遍历所述当前界面上的控件,并获取遍历过程中当前控件的控件类型;将可被所述当前控件接收的与所述控件类型对应的所有交互事件发送给所述当前控件进行处理;
在所述当前界面中的控件均已完成分析处理的情况下,将除所述当前界面之外的其他界面作为待遍历的当前界面,并对所述待遍历的当前界面上的控件进行所述遍历处理。
2.根据权利要求1所述的方法,其特征在于,在将可被所述当前控件接收的与所述控件类型对应的所有交互事件发送给所述当前控件进行处理之后,所述方法还包括:
保存所述当前控件的分析状态;其中,所述当前控件的分析状态包括:已分析完成的交互事件。
3.根据权利要求2所述的方法,其特征在于,在将可被所述当前控件接收的与所述控件类型对应的所有交互事件发送给所述当前控件进行处理之后,所述方法还包括:
在所述应用退出桌面或跳转到其他应用程序或跳转到所述其他界面时,保存所述当前界面的分析状态,其中,所述当前界面的分析状态包括:所述当前界面上的未完成分析处理的控件。
4.根据权利要求3所述的方法,其特征在于,
保存所述当前控件的分析状态包括:将所述当前控件的分析状态保存在与所述当前控件对应的控件状态列表中;
保存所述当前界面的分析状态包括:将所述当前界面的分析状态保存在与所述当前界面对应的控件列表中。
5.根据权利要求4所述的方法,其特征在于,在保存所述当前界面的分析状态之后,所述方法还包括:
在所述当前界面被再次打开的情况下,获取所述控件列表,得到所述当前界面上的未完成分析处理的控件;
获取所述未完成分析处理的控件的控件状态列表;
将所述未完成分析处理的控件的指定交互事件发送给所述未完成分析处理的控件进行处理;其中,所述指定交互事件未包含在所述未完成分析处理的控件的控件状态列表中;
在所述指定交互事件都已完成的情况下,将所述未完成分析处理的控件从所述控件列表中删除。
6.根据权利要求5所述的方法,其特征在于,在获取所述控件列表之后,所述方法还包括:
判断所述控件列表是否为空;
在判断结果为空的情况下,将所述当前界面返回;
在判断结果为否的情况下,得到所述当前界面上的未完成分析处理的控件。
7.根据权利要求1所述的方法,其特征在于,
在对应用运行时当前界面上的控件进行遍历处理之前,所述方法还包括:将所述当前界面压入状态栈;
在所述当前界面中的控件均已完成分析处理的情况下,将所述当前界面从所述状态栈中弹出;
其中,所述状态栈保存有所述应用运行中已打开且未退出的界面。
8.根据权利要求7所述的方法,其特征在于,在将所述当前界面压入状态栈之后,所述方法还包括:
保存所述当前界面的启动参数,其中,所述启动参数用于在所述应用软件非正常跳出时启动所述状态栈中的栈顶元素对应的界面;其中,所述应用软件非正常跳出为不是由在所述应用软件运行过程中展示的各个界面的控件的各类交互事件所导致的所述应用软件的跳出。
9.根据权利要求1所述的方法,其特征在于,在获取遍历过程中当前控件的控件类型之后,所述方法还包括:
根据所述控件类型生成所述所有交互事件。
10.根据权利要求1所述的方法,其特征在于,对应用运行时当前界面上的控件进行遍历处理包括:通过深度优先遍历算法对所述当前界面上的控件进行所述遍历处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司;北京工业大学,未经中兴通讯股份有限公司;北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710240791.9/1.html,转载请声明来源钻瓜专利网。





