CN111767203A - 基于应用测试的弹框处理方法及系统 - Google Patents
基于应用测试的弹框处理方法及系统 Download PDFInfo
- Publication number
- CN111767203A CN111767203A CN201910258158.1A CN201910258158A CN111767203A CN 111767203 A CN111767203 A CN 111767203A CN 201910258158 A CN201910258158 A CN 201910258158A CN 111767203 A CN111767203 A CN 111767203A
- Authority
- CN
- China
- Prior art keywords
- bullet
- event
- configuration data
- bullet frame
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于应用测试的弹框处理方法及系统,该方法包括:通过预设的事件监听接口对应用测试过程中的动态事件进行监听;判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。该方式提升了测试效率,杜绝了因测试人员不知晓相关内容而导致测试过程无法正常进行的问题。
Description
技术领域
本发明涉及互联网技术领域,具体涉及一种基于应用测试的弹框处理方法及系统。
背景技术
目前,在应用的测试过程中,需要针对应用的启动过程以及动态运行过程进行测试。例如,在兼容性测试中,对目标应用进行兼容性测试时,需要执行安装、冷启动、热启动、卸载等四个步骤,当四个步骤都正确时,才确定目标应用兼容当前的终端设备。由于安卓手机的型号、品牌多种多样,且各个品牌厂商的封装代码不同,因此为兼容性测试造成了很大的困难。而且,为了提升用户信息的安全性,在一些操作系统中引入了权限弹框机制,该机制需要用户手动输入账户、密码等相关信息后方可安装。
但是,发明人在实现本发明的过程中发现,现有技术中的上述实现方式至少存在如下缺陷:在引入权限弹框机制的终端设备中,无法实现应用的自动化测试,需要在弹框弹出后由测试人员手动输入相关内容,从而为测试过程带来了不便,降低了测试效率。并且,在测试人员不知晓相关内容的前提下将导致测试过程无法正常进行。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于应用测试的弹框处理方法及系统。
根据本发明的一个方面,提供了一种基于应用测试的弹框处理方法,包括:
通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
根据本发明的另一方面,提供了一种基于应用测试的弹框处理系统,包括:
监听模块,适于通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断模块,适于判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
匹配模块,适于从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
处理模块,适于当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
根据本发明的又一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述基于应用测试的弹框处理方法对应的操作。
根据本发明的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述基于应用测试的弹框处理方法对应的操作。
在本发明所提供的基于应用测试的弹框处理方法及系统中,通过预设的事件监听接口对应用测试过程中的动态事件进行监听,以获取与弹框事件相对应的弹框属性信息,从而根据本地存储空间中存储的弹框配置数据自动处理与弹框属性信息相对应的弹框事件。该方式在弹框弹出后无需由测试人员手动输入相关内容,能够自动根据预先配置的弹框配置数据处理弹框事件,从而为测试过程带来了便利,提升了测试效率,杜绝了因测试人员不知晓相关内容而导致测试过程无法正常进行的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的基于应用测试的弹框处理方法的流程示意图;
图2示出了根据本发明另一个实施例的基于应用测试的弹框处理方法的流程示意图;
图3示出了根据本发明又一个实施例的基于应用测试的弹框处理系统的结构示意图;
图4示出了根据本发明的一种电子设备的结构示意图;
图5a和图5b分别示出了两种形式的弹框的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的基于应用测试的弹框处理方法的流程示意图,如图1所示,该方法包括:
步骤S110:通过预设的事件监听接口对应用测试过程中的动态事件进行监听。
其中,事件监听接口用于监听应用启动及运行过程中发生的各类事件,该事件既可以是系统事件、也可以是用户触发事件,本发明不限定事件的具体类型。在本实施例中,主要通过事件监听接口针对可能为弹框事件的动态事件进行监听。具体实施时,该事件监听接口可以为系统提供的预设接口,也可以为自定义的接口,本发明对事件监听接口的具体实现方式不做限定。
步骤S120:判断监听到的动态事件是否为弹框事件;若是,获取与该弹框事件相对应的弹框属性信息。
具体地,在判断监听到的动态事件是否为弹框事件时,可以获取与动态事件相对应的界面截图,并根据界面截图判断该动态事件是否为弹框事件。或者,也可以获取事件的ID或事件标识、事件参数等相关信息,根据标识、参数等信息快速判断是否为弹框事件,本发明对弹框事件的具体判断方式不做限定。
当判断监听到的动态事件为弹框事件时,需要获取与该弹框事件相对应的弹框属性信息。其中,弹框属性信息用于描述与弹框事件相关的各类信息内容,包括:弹框事件的时间、与弹框事件相对应的包名信息、类名信息、特征文本信息、和/或组件信息等。本发明不限定弹框属性信息的具体内涵,凡是能够用于描述弹框事件相关特征的内容均可作为弹框属性信息。
步骤S130:从预设的本地存储空间中读取弹框配置数据,将弹框配置数据与弹框属性信息进行匹配;其中,本地存储空间中存储的弹框配置数据根据云端配置数据动态更新。
其中,预设的本地存储空间用于存储弹框配置数据,具体可设置在运行应用的终端设备上,也可以设置在与该终端设备连接的其他客户端上。具体地,本地存储空间中存储的弹框配置数据根据云端配置数据动态更新。其中,云端配置数据即为云端存储的最新的全量的弹框配置数据。具体地,弹框配置数据是指:与弹框事件、弹框窗口的外观、输入项等内容相关联的数据。本发明不限定弹框配置数据的具体内涵,凡是与弹框相关联的数据信息均可作为弹框配置数据。
步骤S140:当匹配成功时,根据弹框配置数据处理与弹框属性信息相对应的弹框事件。
当匹配成功的时候,说明本次弹框事件中待输入的内容项的相关信息已经存储在弹框配置数据中,相应地,直接将弹框配置数据中与本次弹框事件对应的弹框属性信息相匹配的内容自动输入到弹框窗口中包含的输入入口,由此能够实现弹框事件的自动处理。
由此可见,在本发明所提供的基于应用测试的弹框处理方法中,通过预设的事件监听接口对应用测试过程中的动态事件进行监听,以获取与弹框事件相对应的弹框属性信息,从而根据本地存储空间中存储的弹框配置数据自动处理与弹框属性信息相对应的弹框事件。该方式在弹框弹出后无需由测试人员手动输入相关内容,能够自动根据预先配置的弹框配置数据处理弹框事件,从而为测试过程带来了便利,提升了测试效率,杜绝了因测试人员不知晓相关内容而导致测试过程无法正常进行的问题。
图2示出了根据本发明另一个实施例的基于应用测试的弹框处理方法的流程示意图。如图2所示,该方法包括:
步骤S200:每当预设的心跳间隔到达时,向云服务器发送配置数据获取请求,以获取云服务器中存储的云端配置数据;其中,配置数据获取请求为HTTP请求。
其中,云服务器用于存储云端配置数据,该云端配置数据即为全量的弹框配置数据。并且,云服务器上存储的云端配置数据能够根据应用的更新迭代等情况而动态更新。例如,当应用版本升级后,若新版本的应用中新增了一次弹框操作,则云服务器中相应增加该新增的弹框操作所对应的配置数据。本发明不限定云服务器上的云端配置数据的具体获取方式,本领域技术人员可预先监控应用的运行过程并通过预设的挂钩函数或监听接口来获取用户在弹框后输入的数据,从而生成上述的云端配置数据。
例如,预先针对应用进行监听,当监听到弹框事件时,获取弹框事件所对应的弹框截图以及针对本次弹框事件输入的数据信息,根据弹框事件的事件标识、弹框截图信息以及输入的数据信息等内容生成对应的弹框配置数据,将该弹框配置数据作为云端配置数据存储在云服务器中。由此可见,云端配置数据包括多个弹框配置数据,各个弹框配置数据分别对应于不同的弹框事件。
相应地,终端设备需要定期从云服务器上拉取最新的弹框配置数据,以便存储在本地实现快速比对。具体拉取时,可以由终端设备每隔预设的心跳间隔,向云服务器发送配置数据获取请求,该配置数据获取请求为HTTP请求。云服务器接收到终端设备发来的HTTP请求后,向终端设备返回最新的弹框配置数据。终端设备将接收到的弹框配置数据固化到本地,以实现数据固化。具体实施时,通过设置文件写入路径的方式,将云端的弹框配置数据固化到预设的文件写入路径下。由此可见,本实施例通过数据更新固化机制,实现了弹框配置数据的本地化存储。
步骤S210:通过预设的事件监听接口对应用测试过程中的动态事件进行监听。
其中,事件监听接口用于监听应用启动及运行过程中发生的各类事件,该事件既可以是系统事件、也可以是用户触发事件,本发明不限定事件的具体类型。在本实施例中,事件监听接口为OnAccessibilityEventListener事件回调接口。具体地,通过自动化测试框架UIAutomator监听OnAccessibilityEventListener接口,并在监听到弹框事件时,拉取固化在本地的弹框配置数据,以实现弹框处理。其中,通过OnAccessibilityEventListener事件回调接口,能够在动态事件发生时回调该接口,从而通过该接口获取动态事件的相关信息。
具体实施时,可以预先配置服务启动参数,以便根据该服务启动参数启动对应的应用服务,并在启动后持续监听动态事件。具体监听时,可通过方法反射的方式获取监听的事件信息。
步骤S220:判断监听到的动态事件是否为弹框事件。
具体地,在判断监听到的动态事件是否为弹框事件时,可通过多种方式实现。
例如,在一种实现方式中,直接获取动态事件的事件ID或事件标识、事件参数等相关信息,相应地,根据事件标识、事件参数等信息快速判断是否为弹框事件。具体实施时,可以预先收集弹框事件的事件ID或事件标识、事件参数等信息,提取并存储其中的弹框特征信息,该弹框特征信息是指能够标识一个事件属于弹框事件的信息。通过该方式能够快速判断出弹框事件。
又如,在另一种实现方式中,获取监听到的动态事件所对应的界面截图,将该界面截图与预设的弹框截图模板进行匹配;若匹配成功,则确定监听到的动态事件为弹框事件。具体实施时,需要预先获取并存储弹框截图模板,可以根据预先收集到的弹框界面确定弹框截图模板。该弹框截图模板用于存储弹框截图的尺寸、形状、颜色等外观信息,从而通过外观特征的匹配识别当前事件是否为弹框事件。具体实现时,可以预先将弹框窗口划分为多种类型,进而分别针对每种类型的弹框窗口设置对应的弹框截图模板,具体划分时,可根据弹框功能、弹框尺寸等方式进行划分。相应地,弹框截图模板包括多种类型,分别将界面截图与各种类型的弹框截图模板进行匹配,以进一步确定弹框事件的类型。
在一个具体的示例中,根据窗口变化情况进行判断是否弹框,并在出现弹框时,筛掉完整界面,并获取弹框的顶部、左侧的坐标值,以便在窗口内容变化时获取当前界面的坐标点以及完整的页面点击行为。
步骤S230:若是,获取与该弹框事件相对应的弹框属性信息。
当判断监听到的动态事件为弹框事件时,需要获取与该弹框事件相对应的弹框属性信息。其中,弹框属性信息用于描述与弹框事件相关的各类信息内容,包括:弹框事件的时间、与弹框事件相对应的包名信息、类名信息、特征文本信息、和/或组件信息等。本发明不限定弹框属性信息的具体内涵,凡是能够用于描述弹框事件相关特征的内容均可作为弹框属性信息。
步骤S240:从预设的本地存储空间中读取弹框配置数据,将弹框配置数据与弹框属性信息进行匹配;其中,本地存储空间中存储的弹框配置数据根据云端配置数据动态更新。
其中,预设的本地存储空间用于根据步骤S200存储并固化弹框配置数据,具体可设置在运行应用的终端设备上,也可以设置在与该终端设备连接的其他客户端设备上。具体地,弹框配置数据是指:与弹框事件、弹框窗口的外观、输入项等内容相关联的数据。由此可见,弹框配置数据与弹框属性信息均用于描述弹框事件的相关特征,因此,针对同一个弹框事件,其对应的弹框配置数据与弹框属性信息应相同。相应地,为了判断本次弹框事件的类型,需要将弹框配置数据与弹框属性信息进行匹配。
具体匹配时,按照预设的匹配顺序,依次将与弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息与弹框属性信息进行匹配。其中,匹配顺序可以灵活设置。例如,预先针对包名信息、类名信息、特征文本信息、以及组件信息设置不同的匹配优先级,然后,按照匹配优先级的顺序依次进行匹配。通过设置不同的匹配优先级,能够将优先级高的内容优先匹配,从而提升匹配效率。下面给出一种具体的匹配方式:
首先,将弹框属性信息中包含的包名信息与本地存储的全部弹框配置数据中包含的包名信息进行匹配,从多个弹框配置数据中滤除与包名信息不匹配的数据项,得到由包名信息相匹配的弹框配置数据构成的第一集合,从而缩减后续匹配的范围。总之,先用包名筛选一遍,以减少循环次数。
然后,将弹框属性信息中包含的类名信息与滤除与包名信息不匹配的数据项后得到的弹框配置数据(即第一集合)中包含的类名信息进行匹配,以便从与滤除与包名信息不匹配的数据项后得到的弹框配置数据中滤除与类名信息不匹配的数据项,得到由包名信息以及类名信息均匹配的弹框配置数据构成的第二集合,从而进一步缩减后续匹配的范围,第二集合为第一集合的子集。总之,再用类名筛选一遍,以进一步减少循环次数。
接下来,将弹框属性信息中包含的特征文本信息与滤除与类名信息不匹配的数据项后得到的弹框配置数据(即第二集合)中包含的特征文本信息进行匹配,从与滤除与类名信息不匹配的数据项后得到的弹框配置数据中滤除与特征文本信息不匹配的数据项,得到由包名信息、类名信息以及特征文本信息均匹配的弹框配置数据构成的第三集合,从而再一步缩减后续匹配的范围,第三集合为第二集合的子集。由此可见,进一步用定位文本(即特征文本信息)筛选一遍,以减少循环次数。
最后,将弹框属性信息中包含的组件信息与滤除与特征文本信息不匹配的数据项后得到的弹框配置数据(即第三集合)中包含的组件信息进行匹配,以确定与弹框属性信息相匹配的弹框配置数据。具体地,循环匹配弹框配置数据中包含的各个子组件,具体根据组件ID以及坐标点击位置等进行判断。并且,需要进一步判断组件是否为输入框类型以及当前组件是否可点击等信息。
通过上述操作,即可实现弹框配置数据与弹框属性信息之间的匹配。
步骤S250:当匹配成功时,根据弹框配置数据处理与弹框属性信息相对应的弹框事件。
当匹配成功的时候,说明本次弹框事件中待输入的内容项的相关信息已经存储在弹框配置数据中,相应地,直接将弹框配置数据中与本次弹框事件对应的弹框属性信息相匹配的内容自动输入到弹框窗口中包含的输入入口,由此能够实现弹框事件的自动处理。具体处理时,需要结合弹框事件对应的弹框窗口中包含的输入项的形式、名称、数量等信息来确定与各个输入项相匹配的输入内容,从而自动填充对应的输入内容,以实现弹框事件的自动处理。
具体实施时,首先,将与弹框属性信息相匹配的弹框配置数据确定为目标配置数据。由于预先存储的弹框配置数据很多,因此,需要从众多的弹框配置数据中确定出与当前弹框事件的弹框属性信息相匹配的弹框配置数据,以便于根据该匹配的弹框配置数据(即目标配置数据)进行处理。然后,确定目标配置数据的操作类型,调用预先配置的与操作类型相对应的操作函数处理与该弹框属性信息相对应的弹框事件。具体地,预先确定每个弹框配置数据所对应的操作类型,该操作类型可以包括:输入用户信息类型、权限验证类型等,分别针对每种操作类型设置用于执行该操作类型的操作函数。与操作类型相对应的操作函数包括:用于输入用户信息的函数、用于输入权限验证信息的函数等各类函数,通过调用对应的操作函数即可实现弹框事件的自动处理。
另外,可选的,本实施例进一步包括以下操作:当匹配不成功时,生成预警提示消息,以提示测试人员人工处理弹框事件,从而避免因匹配不成功导致的测试失败现象。其中,该预警提示消息可以发送给测试人员,以供测试人员手动处理。并且,该预警提示消息还可以发送给云服务器,以供云服务器根据该预警提示消息更新已配置的弹框配置数据。该预警提示消息可以为邮件类消息或其他类型的消息。
为了便于理解,图5a和图5b分别示出了两种形式的弹框的示意图。
综上可知,通过本实施例中的方式,能够从云端拉取弹框配置数据动态固化到本地,动态修改代码运行参数,从而解决了兼容性测试中因弹框导致的测试失败的问题。该方式能够自动处理弹框事件,避免了因弹框而导致的测试失败问题。本实施例中的方式至少具备如下技术优势:(1)弹框配置数据能够动态更新,无需停止服务;(2)断网时也可以处理弹框;(3)基于组件的比对方式速度快,弹窗定位精准;(4)一个弹框支持多种操作,操作结果成功率比较高;(5)支持正则匹配查找方式;(6)能够解决因AccessibilityNodeInfo点击产生的问题。
图3示出了根据本发明又一个实施例的基于应用测试的弹框处理系统的结构示意图,如图3所示,该系统包括:
监听模块31,适于通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断模块32,适于判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
匹配模块33,适于从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
处理模块34,适于当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
可选的,所述系统进一步包括:
获取模块,适于每当预设的心跳间隔到达时,向云服务器发送配置数据获取请求,以获取所述云服务器中存储的云端配置数据;其中,所述配置数据获取请求为HTTP请求。
可选的,所述判断模块具体适于:
获取监听到的动态事件所对应的界面截图,将所述界面截图与预设的弹框截图模板进行匹配;若匹配成功,则确定监听到的动态事件为弹框事件。
可选的,所述弹框截图模板包括多种类型,则所述匹配模块具体适于:
分别将所述界面截图与各种类型的弹框截图模板进行匹配,以确定弹框事件的类型。
可选的,所述与所述弹框事件相对应的弹框属性信息包括:与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息;
则所述匹配模块具体适于:按照预设的匹配顺序,依次将与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息与所述弹框属性信息进行匹配。
可选的,所述处理模块具体适于:
将与所述弹框属性信息相匹配的弹框配置数据确定为目标配置数据;
确定所述目标配置数据的操作类型,调用预先配置的与所述操作类型相对应的操作函数处理与所述弹框属性信息相对应的弹框事件。
可选的,所述系统进一步包括:预警模块,适于当匹配不成功时,生成预警提示消息。
上述各个模块的具体结构和工作原理可参照方法实施例中相应步骤的描述,此处不再赘述。
本申请实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的基于应用测试的弹框处理方法。
图4示出了根据本发明实施例的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(Communications Interface)404、存储器(memory)406、以及通信总线408。
其中:
处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器402,用于执行程序410,具体可以执行上述域名解析方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行上述方法实施例中的各项操作。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的电子设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明还公开了A1.一种基于应用测试的弹框处理方法,包括:
通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
A2.根据权利要求A1所述的方法,其中,所述方法进一步包括:
每当预设的心跳间隔到达时,向云服务器发送配置数据获取请求,以获取所述云服务器中存储的云端配置数据;其中,所述配置数据获取请求为HTTP请求。
A3.根据权利要求A1或A2所述的方法,其中,所述判断监听到的动态事件是否为弹框事件具体包括:
获取监听到的动态事件所对应的界面截图,将所述界面截图与预设的弹框截图模板进行匹配;若匹配成功,则确定监听到的动态事件为弹框事件。
A4.根据权利要求A3所述的方法,其中,所述弹框截图模板包括多种类型,则所述将所述界面截图与预设的弹框截图模板进行匹配具体包括:
分别将所述界面截图与各种类型的弹框截图模板进行匹配,以确定弹框事件的类型。
A5.根据权利要求A1-A4任一所述的方法,其中,所述与所述弹框事件相对应的弹框属性信息包括:与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息;
则所述将所述弹框配置数据与所述弹框属性信息进行匹配包括:
按照预设的匹配顺序,依次将与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息与所述弹框属性信息进行匹配。
A6.根据权利要求A1-A5任一所述的方法,其中,所述当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件包括:
将与所述弹框属性信息相匹配的弹框配置数据确定为目标配置数据;
确定所述目标配置数据的操作类型,调用预先配置的与所述操作类型相对应的操作函数处理与所述弹框属性信息相对应的弹框事件。
A7.根据权利要求A1-A6任一所述的方法,其中,所述方法进一步包括:当匹配不成功时,生成预警提示消息。
B8.一种基于应用测试的弹框处理系统,包括:
监听模块,适于通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断模块,适于判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
匹配模块,适于从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
处理模块,适于当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
B9.根据权利要求B8所述的系统,其中,所述系统进一步包括:
获取模块,适于每当预设的心跳间隔到达时,向云服务器发送配置数据获取请求,以获取所述云服务器中存储的云端配置数据;其中,所述配置数据获取请求为HTTP请求。
B10.根据权利要求B8或B9所述的系统,其中,所述判断模块具体适于:
获取监听到的动态事件所对应的界面截图,将所述界面截图与预设的弹框截图模板进行匹配;若匹配成功,则确定监听到的动态事件为弹框事件。
B11.根据权利要求B10所述的系统,其中,所述弹框截图模板包括多种类型,则所述匹配模块具体适于:
分别将所述界面截图与各种类型的弹框截图模板进行匹配,以确定弹框事件的类型。
B12.根据权利要求B8-B11任一所述的系统,其中,所述与所述弹框事件相对应的弹框属性信息包括:与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息;
则所述匹配模块具体适于:按照预设的匹配顺序,依次将与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息与所述弹框属性信息进行匹配。
B13.根据权利要求B8-B12任一所述的系统,其中,所述处理模块具体适于:
将与所述弹框属性信息相匹配的弹框配置数据确定为目标配置数据;
确定所述目标配置数据的操作类型,调用预先配置的与所述操作类型相对应的操作函数处理与所述弹框属性信息相对应的弹框事件。
B14.根据权利要求B8-B13任一所述的系统,其中,所述系统进一步包括:预警模块,适于当匹配不成功时,生成预警提示消息。
C15.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求A1-A7中任一项所述的基于应用测试的弹框处理方法对应的操作。
D16.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求A1-A7中任一项所述的基于应用测试的弹框处理方法对应的操作。
Claims (10)
1.一种基于应用测试的弹框处理方法,包括:
通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
2.根据权利要求1所述的方法,其中,所述方法进一步包括:
每当预设的心跳间隔到达时,向云服务器发送配置数据获取请求,以获取所述云服务器中存储的云端配置数据;其中,所述配置数据获取请求为HTTP请求。
3.根据权利要求1或2所述的方法,其中,所述判断监听到的动态事件是否为弹框事件具体包括:
获取监听到的动态事件所对应的界面截图,将所述界面截图与预设的弹框截图模板进行匹配;若匹配成功,则确定监听到的动态事件为弹框事件。
4.根据权利要求3所述的方法,其中,所述弹框截图模板包括多种类型,则所述将所述界面截图与预设的弹框截图模板进行匹配具体包括:
分别将所述界面截图与各种类型的弹框截图模板进行匹配,以确定弹框事件的类型。
5.根据权利要求1-4任一所述的方法,其中,所述与所述弹框事件相对应的弹框属性信息包括:与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息;
则所述将所述弹框配置数据与所述弹框属性信息进行匹配包括:
按照预设的匹配顺序,依次将与所述弹框事件相对应的包名信息、类名信息、特征文本信息、以及组件信息与所述弹框属性信息进行匹配。
6.根据权利要求1-5任一所述的方法,其中,所述当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件包括:
将与所述弹框属性信息相匹配的弹框配置数据确定为目标配置数据;
确定所述目标配置数据的操作类型,调用预先配置的与所述操作类型相对应的操作函数处理与所述弹框属性信息相对应的弹框事件。
7.根据权利要求1-6任一所述的方法,其中,所述方法进一步包括:当匹配不成功时,生成预警提示消息。
8.一种基于应用测试的弹框处理系统,包括:
监听模块,适于通过预设的事件监听接口对应用测试过程中的动态事件进行监听;
判断模块,适于判断监听到的动态事件是否为弹框事件;若是,获取与所述弹框事件相对应的弹框属性信息;
匹配模块,适于从预设的本地存储空间中读取弹框配置数据,将所述弹框配置数据与所述弹框属性信息进行匹配;其中,所述本地存储空间中存储的弹框配置数据根据云端配置数据动态更新;
处理模块,适于当匹配成功时,根据所述弹框配置数据处理与所述弹框属性信息相对应的弹框事件。
9.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的基于应用测试的弹框处理方法对应的操作。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的基于应用测试的弹框处理方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910258158.1A CN111767203A (zh) | 2019-04-01 | 2019-04-01 | 基于应用测试的弹框处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910258158.1A CN111767203A (zh) | 2019-04-01 | 2019-04-01 | 基于应用测试的弹框处理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767203A true CN111767203A (zh) | 2020-10-13 |
Family
ID=72718890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910258158.1A Pending CN111767203A (zh) | 2019-04-01 | 2019-04-01 | 基于应用测试的弹框处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767203A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113608817A (zh) * | 2021-08-19 | 2021-11-05 | 上海幻电信息科技有限公司 | 弹框处理方法及系统 |
CN115587352A (zh) * | 2022-10-10 | 2023-01-10 | 奇安信科技集团股份有限公司 | 一种隐私安全监测方法、装置、电子设备及存储介质 |
-
2019
- 2019-04-01 CN CN201910258158.1A patent/CN111767203A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113608817A (zh) * | 2021-08-19 | 2021-11-05 | 上海幻电信息科技有限公司 | 弹框处理方法及系统 |
CN113608817B (zh) * | 2021-08-19 | 2024-05-07 | 上海幻电信息科技有限公司 | 弹框处理方法及系统 |
CN115587352A (zh) * | 2022-10-10 | 2023-01-10 | 奇安信科技集团股份有限公司 | 一种隐私安全监测方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107798064B (zh) | 页面处理方法、电子设备及计算机可读存储介质 | |
CN110704173A (zh) | 任务调度方法、调度系统、电子设备及计算机存储介质 | |
CN107888446B (zh) | 一种协议健壮性测试方法及装置 | |
CN107729255B (zh) | 软件测试方法、装置及系统 | |
EP3761605A1 (en) | Vehicle diagnosis method, related device and system | |
CN109905292B (zh) | 一种终端设备识别方法、系统及存储介质 | |
CN111767203A (zh) | 基于应用测试的弹框处理方法及系统 | |
CN106155746B (zh) | 一种安装文件处理方法及装置、服务器 | |
US10108474B2 (en) | Trace capture of successfully completed transactions for trace debugging of failed transactions | |
CN108563472B (zh) | 基于多开应用的服务插件加载方法及装置 | |
CN108628733B (zh) | 批量业务处理操作的测试方法及装置 | |
CN107967192B (zh) | 一种智能终端的系统崩溃处理方法和装置 | |
CN111382259A (zh) | 一种app崩溃日志的解析方法及装置 | |
CN108170568B (zh) | 智能设备的出厂测试方法、装置和刷机包生成方法、装置 | |
CN111796738A (zh) | 消息处理方法、装置、电子设备 | |
CN109408104B (zh) | 一种获取游戏整合信息的方法及装置 | |
CN110795239A (zh) | 应用内存泄露的检测方法及装置 | |
CN111045761B (zh) | 一种基于svg图像显示的远程展示监测方法及装置 | |
CN111198725A (zh) | 应用启动的处理方法、计算设备及计算机存储介质 | |
CN113867838A (zh) | 应用程序的启动方法、电子设备及计算机存储介质 | |
CN112579960A (zh) | 一种网页取证方法、网页取证装置及服务器 | |
CN108509287B (zh) | 请求状态管理方法、装置、电子设备及可读存储介质 | |
CN107506220B (zh) | 一种基于软件产品的安装包解压方法和装置 | |
CN111367860A (zh) | 文件刷新方法及装置 | |
CN117349189B (zh) | 一种app新版本测试方法、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |