一种应用弹窗识别方法和装置制造方法及图纸

技术编号:13964314 阅读:80 留言:0更新日期:2016-11-08 12:36
本发明专利技术的实施方式提供了一种应用弹窗识别方法。该应用弹窗识别方法包括:获取被测设备当前置顶应用的应用信息和当前焦点窗口的第一窗口信息,所述应用信息中包含有第一包名信息,所述第一窗口信息中包含有第二包名信息,所述被测设备用于运行被测试应用;如果所述第一包名信息和所述第二包名信息不同,则确定检测到应用弹窗。通过获取当前置顶应用的应用信息和当前焦点窗口的窗口信息中包含的包名信息确定被测设备当前是否有应用弹窗弹出,为及时处理测试过程中的弹窗提供了基础,避免了由于非预期应用弹窗弹出对测试进程和测试结果造成的影响,为用户带来了更好的体验。此外,本发明专利技术的实施方式提供了一种应用弹窗识别装置。

【技术实现步骤摘要】

本专利技术的实施方式涉及应用测试
,更具体地,本专利技术的实施方式涉及一种应用弹窗识别方法和装置
技术介绍
本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。随着移动通信技术的飞速发展和移动互联网时代的到来,手机等移动终端作为人们必备的移动通信工具,已从简单的通话工具向智能化发展。为了满足用户日益增长和多种多样的业务需求,基于移动终端的互联网应用越来越多。基于移动终端的互联网应用在被提供给用户使用之前,互联网应用的提供商需要对该应用提供的功能进行测试。而在基于Andriod(安卓)操作系统开发的互联网应用测试过程中,尤其是自动化测试过程中,由于测试框架的不足或者测试方法不当,不可避免的会出现一些应用弹窗。图1a-1d为一些弹窗示例。如图1a所示,其为被测试应用内部的升级提示框,如图1b所示,其为被测试应用内部长按呼出右键菜单弹窗;图1c为被测试应用内部声明使用系统权限弹窗;图1d为跨应用(即除被测试应用之外的其它应用)弹出的系统权限提醒弹窗。
技术实现思路
但是,出于在应用测试过程中出现的弹窗可能是被测试应用需要被测试的功能之一,也有可能是不需要被测试的功能的原因,现有技术中在测试应用过程中无法避免弹窗弹出。而由于测试执行过程中,当有弹窗弹出时,会获取当前屏幕的操作焦点,如果弹出的弹窗不是被测试应用需要被测试的功能之一,如果不及时对弹窗进行处理,则将导致测试无法被正常执行,从而对测试结果造成影响,这是非常令人烦恼的过程。为此,非常需要一种应用弹窗识别方法,以使弹窗能够及时处理,避免由于测试之外的弹窗弹出影响测试进程和测试结果。在本上下文中,本专利技术的实施方式期望提供一种应用弹窗识别方法和装置。在本专利技术实施方式的第一方面中,提供了一种应用弹窗识别方法,包括:获取被测设备当前置顶应用的应用信息和当前焦点窗口的第一窗口信息,所述应用信息中包含有第一包名信息,所述第一窗口信息中包含有第二包名信息,所述被测设备用于运行被测试应用;如果所述第一包名信息和所述第二包名信息不同,则确定检测到应用弹窗。可选的,本专利技术实施方式提供的应用弹窗识别方法,还包括:如果所述第一包名信息和所述第二包名信息相同,则获取所述被测设备当前运行所有窗口的第二窗口信息;根据获取的第二窗口信息中包含的第三包名信息,统计与所述第一包名信息相同的第三包名信息的数量N,所述N为自然数;如果N大于等于2,则确定检测到应用弹窗。进一步的,本专利技术实施方式提供的应用弹窗识别方法中,确定检测到应用弹窗之后,还包括:判断检测到的应用弹窗的窗口信息与针对当前测试场景预先定义的任一窗口信息是否相同;如果不同,则向所述被测设备下发弹窗处理指令。可选的,本专利技术实施方式提供的应用弹窗识别方法,向所述被测设备下发弹窗处理指令之前,还包括:获取检测到的应用弹窗中包含的所有控件元素的控件元素信息;针对每一控件元素,如果根据其对应的控件元素信息确定该控件元素为需要点击的控件元素,则读取该控件元素对应的控件元素信息中包含的控件元素位置信息;以及向所述被测设备下发弹窗处理指令,具体包括:向所述被测设备下发点击操作指令,所述点击操作指令中包含有需要点击的控件元素的位置信息。其中,针对每一控件元素,按照以下方法判断该控件元素是否为需要点击的控件元素:读取该控件元素对应的控件元素信息中的控件元素类型信息;判断读取的控件元素类型信息是否为按钮BUTTON;如果是,则确定该控件元素是需要点击的控件元素;如果否,则确定该控件元素不是需要点击的控件元素。可选的,本专利技术实施方式提供的应用弹窗识别方法,获取检测到的应用弹窗中包含的所有控件元素的控件元素信息之后,还包括:针对每一控件元素,如果根据其对应的控件元素信息确定该控件元素为可勾选的控件元素,则读取该控件元素对应的控件元素信息中包含的该控件元素的控件元素勾选信息;如果读取的控件元素勾选信息为假FALSE,则读取该控件元素对应的控件元素信息中包含的控件元素位置信息;以及向所述被测设备下发弹窗处理指令,具体包括:向所述被测设备下发点击操作指令,所述点击操作指令中包含有需要勾选的控件元素的位置信息。其中,针对每一控件元素,按照以下方法判断该控件元素是否为可勾选的控件元素:读取该控件元素对应的控件元素信息中的控件元素类型信息;判断读取的控件元素类型信息是否为复选框CHECKBOX;如果是,则确定该控件元素是可勾选的控件元素;如果否,则确定该控件元素不是可勾选的控件元素。较佳的,本专利技术实施方式提供的应用弹窗识别方法中,获取检测到的应用弹窗中包含的所有控件元素的控件元素信息,具体包括:向所述被测设备发送获取检测到的应用弹窗中包含的所有控件元素的控件元素信息的第一信息获取指令;接收所述被测设备针对第一信息获取指令返回的、包含有检测到的应用弹窗中包含的所有控件元素的控件元素信息的文件;解析接收到的文件得到检测到的应用弹窗中包含的所有控件元素的控件元素信息。较佳的,本专利技术实施方式提供的应用弹窗识别方法中,获取被测设备当前置顶应用的应用信息和当前焦点窗口的第一窗口信息,具体包括:分别向所述被测设备发送获取被测设备当前置顶应用的应用信息的第二信息获取指令和获取被测设备当前焦点窗口的第一窗口信息的第三信息获取指令;以及接收所述被测设备分别针对第二信息获取指令返回的、被测设备当前置顶应用的应用信息和针对第三信息获取指令返回的、被测设备当前焦点窗口的第一窗口信息。较佳的,本专利技术实施方式提供的应用弹窗识别方法中,获取所述被测设备当前运行所有窗口的第二窗口信息,具体包括:向所述被测设备发送获取被测设备当前运行所有窗口的第二窗口信息的第四信息获取指令;接收所述被测设备针对所述第四信息获取指令返回的第二窗口信息。较佳的,所述被测试应用为基于安卓Andriod操作系统开发的,以及所述第一信息获取指令、第二信息获取指令、第三信息获取指令或者第四信息获取指令为安卓调试桥ADB指令。其中,所述ADB指令由独立于所述被测设备的第二设备发送,所述应用弹窗识别方法由所述第二设备执行。在本专利技术实施方式的第二方面中,提供了一种应用弹窗识别装置,包括:第一获取单元,用于获取被测设备当前置顶应用的应用信息和当前焦点窗口的第一窗口信息,所述应用信息中包含有第一包名信息,所本文档来自技高网...

【技术保护点】
一种应用弹窗识别方法,包括:获取被测设备当前置顶应用的应用信息和当前焦点窗口的第一窗口信息,所述应用信息中包含有第一包名信息,所述第一窗口信息中包含有第二包名信息,所述被测设备用于运行被测试应用;如果所述第一包名信息和所述第二包名信息不同,则确定检测到应用弹窗。

【技术特征摘要】
1.一种应用弹窗识别方法,包括:
获取被测设备当前置顶应用的应用信息和当前焦点窗口的第一窗口信息,所述应用信
息中包含有第一包名信息,所述第一窗口信息中包含有第二包名信息,所述被测设备用于
运行被测试应用;
如果所述第一包名信息和所述第二包名信息不同,则确定检测到应用弹窗。
2.根据权利要求1所述的方法,还包括:
如果所述第一包名信息和所述第二包名信息相同,则获取所述被测设备当前运行所有
窗口的第二窗口信息;
根据获取的第二窗口信息中包含的第三包名信息,统计与所述第一包名信息相同的第
三包名信息的数量N,所述N为自然数;
如果N大于等于2,则确定检测到应用弹窗。
3.根据权利要求1或2任一项所述的方法,确定检测到应用弹窗之后,还包括:
判断检测到的应用弹窗的窗口信息与针对当前测试场景预先定义的任一窗口信息是
否相同;
如果不同,则向所述被测设备下发弹窗处理指令。
4.根据权利要求3所述的方法,向所述被测设备下发弹窗处理指令之前,还包括:
获取检测到的应用弹窗中包含的所有控件元素的控件元素信息;
针对每一控件元素,如果根据其对应的控件元素信息确定该控件元素为需要点击的控
件元素,则读取该控件元素对应的控件元素信息中包含的控件元素位置信息;以及
向所述被测设备下发弹窗处理指令,具体包括:
向所述被测设备下发点击操作指令,所述点击操作指令中包含有需要点击的控件元素
的位置信息。
5.根据权利要求4所述的方法,针对每一控件元素,按照以下方法判断该控件元素是否
为需要点击的控件元素:
读取该控件元素对应的控件元素信息中的控件元素类型信息;
判断读取的控件元素类型信息是否为按钮BUTTON;
如果是,则确定该控件元素是需要点击的控件元素;
如果否,则确定该控件元素不是需要点击的控件元素。
6.根据权利要求4所述的方法,获取检测到的应用弹窗中包含的所有控件元素的控件
元素信息之后,还包括:
针对每一控件元素,如果根据其对应的控件元素信息确定该控件元素为可勾选的控件
元素,则读取该控件元素对...

【专利技术属性】
技术研发人员:赵志成
申请(专利权)人:杭州朗和科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1