弹窗处理方法及装置制造方法及图纸

技术编号:21115570 阅读:56 留言:0更新日期:2019-05-16 08:56
本发明专利技术是关于一种弹窗处理方法及装置。该方法包括:在对目标应用程序进行测试时,可以获取该目标应用程序的主进程地址和子进程地址,通过主进程地址监听该目标应用程序中的窗口事件,当监听到的窗口事件所对应的窗口的第一属性信息指示窗口为弹窗时,对该窗口执行预定处理。即在对一个目标应用程序进行测试时,可以根据目标应用程序的进程地址自动监控目标应用程序当前是否正在处理窗口,进一步获取目标应用程序当前正在处理的窗口的属性,并根据窗口的属性判断当前正在处理的窗口是否为弹窗,不需要测试人员预先在测试脚本中添加弹窗的属性模板,从而提高了测试脚本的开发效率以及对应用程序的测试效率。

Bullet Window Treatment Method and Device

【技术实现步骤摘要】
弹窗处理方法及装置
本专利技术涉及软件测试
,特别涉及一种弹窗处理方法及装置。
技术介绍
弹窗是指打开操作系统界面或者应用界面时自动弹出的窗口。在软件自动化测试过程中,为了使得自动化测试过程能够顺利进行,测试脚本通常需要在测试过程中识别弹窗事件并作相应的处理。在相关技术中,测试人员可以人工确定待测试的应用程序中可能出现的弹窗,并在测试脚本中添加对这些弹窗的识别和处理的代码,使得测试脚本在运行过程中能够在弹窗弹出时及时识别并对其进行处理。具体的,测试人员在测试脚本中人工预先设置可能出现的弹窗的属性模板,在测试过程中,检测当前显示的对象的属性信息与预先设置的弹窗的属性模板是否匹配,如果当前显示的对象的属性信息与预先设置的弹窗的属性模板匹配,则确定当前显示的对象为弹窗,并对弹窗进行预定处理。在相关技术中,需要测试人员人工确定应用程序中可能出现的弹窗,并在测试脚本中添加弹窗的属性模板,影响测试脚本的开发效率以及对应用程序的测试效率。
技术实现思路
本专利技术实施例提供了一种弹窗处理方法及装置,可以解决相关技术中需要测试人员人工确定应用程序中可能出现的弹窗,并在测试脚本中添加弹窗的模板,影响测试脚本的开发效率以及对应用程序的测试效率的问题,技术方案如下:一方面,提供了一种弹窗处理方法,所述方法包括:在对目标应用程序进行测试时,获取所述目标应用程序的主进程地址和子进程地址,所述主进程地址是用于实现所述目标应用程序的主进程的代码块地址,所述子进程地址是用于实现所述目标应用程序的子进程的代码块地址;通过所述主进程地址监听所述目标应用程序中的窗口事件,所述窗口事件指示所述目标应用程序正在处理窗口对象;通过所述子进程地址获取所述窗口对象所对应的窗口的第一属性信息,所述第一属性信息指示所述窗口是否为弹窗;当所述第一属性信息指示所述窗口为弹窗时,对所述窗口执行预定处理。另一方面,提供了一种弹窗处理装置,所述装置包括:地址获取模块,用于在对目标应用程序进行测试时,获取所述目标应用程序的主进程地址和子进程地址,所述主进程地址是用于实现所述目标应用程序的主进程的代码块地址,所述子进程地址是用于实现所述目标应用程序的子进程的代码块地址;事件监听模块,用于通过所述主进程地址监听所述目标应用程序中的窗口事件,所述窗口事件指示所述目标应用程序正在处理窗口对象;第一属性获取模块,用于通过所述子进程地址获取所述窗口对象所对应的窗口的第一属性信息,所述第一属性信息指示所述窗口是否为弹窗;处理模块,用于当所述第一属性信息指示所述窗口为弹窗时,对所述窗口执行预定处理。可选的,所述地址获取模块,包括:第一地址获取单元,用于获取所述目标应用程序的程序实例对象,并通过调用预设接口获取所述程序实例对象对应的所述主进程地址;第二地址获取单元,用于获取所述目标应用程序的元素实例对象,并通过调用所述预设接口获取所述元素实例对象对应的所述子进程地址。可选的,所述事件监听模块,包括:属性获取单元,用于根据所述主进程地址获取所述目标应用程序正在处理的对象的第二属性信息,所述第二属性信息指示所述目标应用程序正在处理的对象是否为窗口对象;事件确定单元,用于当所述第二属性信息指示所述目标应用程序正在处理的对象为窗口对象时,确定监听到所述窗口事件。可选的,所述装置还包括:第二属性获取模块,用于在所述处理模块对所述窗口执行预定处理之前,获取所述窗口的可视化属性,所述可视化属性指示对应的窗口是否可见;所述处理模块,用于当所述窗口的可视化属性指示所述窗口可见时,执行所述对所述窗口执行预定处理的步骤。可选的,所述处理模块,包括:按钮确定单元,用于遍历所述窗口中包含的各个按钮,确定所述各个按钮中的关闭窗口按钮;模拟点击单元,用于模拟点击所述关闭窗口按钮。可选的,所述装置还包括:信息获取模块,用于在所述地址获取模块获取所述目标应用程序的主进程地址和子进程地址之前,获取所述目标应用程序的主进程信息,所述主进程信息中包含操作系统的版本信息;所述地址获取模块,用于当所述操作系统的版本信息指示所述操作系统的版本不低于预设版本时,执行所述获取所述目标应用程序的主进程地址和子进程地址的步骤。又一方面,提供了一种计算机设备,所述计算机设备包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述第一方面所述的弹窗处理方法。再一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述第一方面所述的弹窗处理方法。本专利技术提供的技术方案可以包括以下有益效果:在对一个目标应用程序进行测试时,可以根据目标应用程序的进程地址自动监控目标应用程序当前是否正在处理窗口,进一步获取目标应用程序当前正在处理的窗口的属性,并根据窗口的属性判断当前正在处理的窗口是否为弹窗,不需要测试人员预先在测试脚本中添加弹窗的属性模板,从而提高了测试脚本的开发效率以及对应用程序的测试效率。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是本专利技术一示例性实施例示出的一种弹窗处理的基本流程图;图2是图1所示实施例涉及的iOS系统中的弹窗处理流程图;图3是本专利技术一示例性实施例示出的一种弹窗处理方法的流程图;图4是本专利技术一示例性实施例示出的iOS系统中的弹窗处理方法的流程图;图5是根据一示例性实施例示出的一种弹窗处理装置的结构方框图;图6是根据一示例性实施例示出的一种计算机设备的结构示意图;图7是根据一示例性实施例示出的一种计算机设备的结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。本专利技术实施例所示的方法可以应用于各种测试终端中,其中,该测试终端可以是运行有测试脚本的终端,该测试脚本用于对测试终端中的操作系统或者基于操作系统运行的应用程序进行自动化测试。其中,该测试终端可以是智能手机、平板电脑或者电子书阅读器等移动终端,或者,该测试终端也可以是智能手表或者智能眼镜等智能可穿戴设备,或者,该测试终端也可以是笔记本电脑、台式电脑或者个人工作站等计算机设备。本专利技术实施例所示的方法,可以用在测试终端运行测试脚本时,对当前测试的系统或应用中弹出的弹窗进行识别和处理。具体的,本专利技术实施例所示的方法可以由测试终端运行测试脚本来实现,或者,本专利技术实施例所示的方法也可以由测试终端运行测试脚本之外的其它应用、插件或者系统组件来实现。图1是根据一示例性实施例示出的一种弹窗处理的基本流程图。如图1所示,在本专利技术实施例中,测试终端在运行测试脚本对目标应用程序进行测试时,可以获取该目标应用程序的主进程地址和子进程地址,通过主进程地址监听该目标应用程序中的窗口事件,当监听到的窗口事件时,通过子进程地址获取窗口事件所对应的窗口的第一属性信息,当该第一属性信息指示该窗口为弹窗时,对该窗口执行预定处理。即在本专利技术实施例中,在对一个目标应用程序进行测试时,可以根据目标应用程序的进程地址自动监控目标应用程序当前是否正在处理窗口,进一步获取目本文档来自技高网...

【技术保护点】
1.一种弹窗处理方法,其特征在于,所述方法包括:在对目标应用程序进行测试时,获取所述目标应用程序的主进程地址和子进程地址,所述主进程地址是用于实现所述目标应用程序的主进程的代码块地址,所述子进程地址是用于实现所述目标应用程序的子进程的代码块地址;通过所述主进程地址监听所述目标应用程序中的窗口事件,所述窗口事件指示所述目标应用程序正在处理窗口对象;通过所述子进程地址获取所述窗口对象所对应的窗口的第一属性信息,所述第一属性信息指示所述窗口是否为弹窗;当所述第一属性信息指示所述窗口为弹窗时,对所述窗口执行预定处理。

【技术特征摘要】
1.一种弹窗处理方法,其特征在于,所述方法包括:在对目标应用程序进行测试时,获取所述目标应用程序的主进程地址和子进程地址,所述主进程地址是用于实现所述目标应用程序的主进程的代码块地址,所述子进程地址是用于实现所述目标应用程序的子进程的代码块地址;通过所述主进程地址监听所述目标应用程序中的窗口事件,所述窗口事件指示所述目标应用程序正在处理窗口对象;通过所述子进程地址获取所述窗口对象所对应的窗口的第一属性信息,所述第一属性信息指示所述窗口是否为弹窗;当所述第一属性信息指示所述窗口为弹窗时,对所述窗口执行预定处理。2.根据权利要求1所述的方法,其特征在于,所述获取所述目标应用程序的主进程地址和子进程地址,包括:获取所述目标应用程序的程序实例对象,并通过调用预设接口获取所述程序实例对象对应的所述主进程地址;获取所述目标应用程序的元素实例对象,并通过调用所述预设接口获取所述元素实例对象对应的所述子进程地址。3.根据权利要求1所述的方法,其特征在于,所述通过所述主进程地址监听所述目标应用程序中的窗口事件,包括:根据所述主进程地址获取所述目标应用程序正在处理的对象的第二属性信息,所述第二属性信息指示所述目标应用程序正在处理的对象是否为窗口对象;当所述第二属性信息指示所述目标应用程序正在处理的对象为窗口对象时,确定监听到所述窗口事件。4.根据权利要求1所述的方法,其特征在于,所述对所述窗口执行预定处理之前,还包括:获取所述窗口的可视化属性,所述可视化属性指示对应的窗口是否可见;当所述窗口的可视化属性指示所述窗口可见时,执行所述对所述窗口执行预定处理的步骤。5.根据权利要求1所述的方法,其特征在于,所述对所述窗口执行预定处理口,包括:遍历所述窗口中包含的各个按钮,确定所述各个按钮中的关闭窗口按钮;模拟点击所述关闭窗口按...

【专利技术属性】
技术研发人员:程春林
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1