CN114490155A - 应用故障检测方法、装置以及计算机可读存储介质 - Google Patents
应用故障检测方法、装置以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114490155A CN114490155A CN202210061997.6A CN202210061997A CN114490155A CN 114490155 A CN114490155 A CN 114490155A CN 202210061997 A CN202210061997 A CN 202210061997A CN 114490155 A CN114490155 A CN 114490155A
- Authority
- CN
- China
- Prior art keywords
- target application
- fault
- application
- control signal
- preset
- 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/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0715—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0718—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an object-oriented system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种应用故障检测方法、装置以及计算机可读存储介质;可以识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。以此,可及时检测出应用故障,可提高应用故障的检测效率及准确性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种应用故障检测方法、装置以及计算机可读存储介质。
背景技术
随着终端设备技术的发展,用户可通过对终端设备中相关的功能应用(Application,APP)进行操控,如对视频应用、音乐应用等操控,以满足对应的体验需求。然而,用户在对终端设备的功能应用进行操控时,由于功能应用在处理控制信号时产生延误,导致终端设备出现卡顿的现象。为了对应用故障进行检测时,相关技术通过对终端设备卡顿场景进行检测,并在检测到终端设备存在卡顿场景时,确定处于运行状态的功能应用,以此,推断出导致卡顿现象的故障应用。
然而,相关技术在检测应用故障时,主要是依赖用户在操控终端设备时所出现的设备卡顿场景来判断应用是否存在故障,无法及时检测出应用故障,降低了应用故障的检测效率;且由于终端设备自身或其他因素的影响,会降低应用故障检测的准确性。
发明内容
本申请实施例提供一种应用故障检测方法、装置以及计算机可读存储介质。可以及时检测出应用故障,可提高应用故障的检测效率及准确性。
本申请实施例提供一种应用故障检测方法,包括:
识别显示界面中焦点窗口所标示的目标应用;
记录向所述目标应用发送模拟控制信号时的发送时间,所述模拟控制信号用于指示所述目标应用运行所述焦点窗口对应的预设模拟逻辑;
若接收到所述目标应用返回所述预设模拟逻辑对应的运行完成通知,则记录所述运行完成通知的接收时间,并根据所述发送时间及接收时间计算所述目标应用在处理所述模拟控制信号时的模拟事件时长;
若所述模拟事件时长大于预设时间阈值,则生成所述焦点窗口的响应故障子事件,并将所述响应故障子事件更新至所述目标应用对应的预设记录表;
根据更新后的预设记录表,确定所述目标应用的故障信息。
相应的,本申请实施例提供一种应用故障检测装置,包括:
识别单元,用于识别显示界面中焦点窗口所标示的目标应用;
记录单元,用于记录向所述目标应用发送模拟控制信号时的发送时间,所述模拟控制信号用于指示所述目标应用运行所述焦点窗口对应的预设模拟逻辑;
计算单元,用于若接收到所述目标应用返回所述预设模拟逻辑对应的运行完成通知,则记录所述运行完成通知的接收时间,并根据所述发送时间及接收时间计算所述目标应用在处理所述模拟控制信号时的模拟事件时长;
更新单元,若所述模拟事件时长大于预设时间阈值,则生成所述焦点窗口的响应故障子事件,并将所述响应故障子事件更新至所述目标应用对应的预设记录表;
确定单元,用于根据更新后的预设记录表,确定所述目标应用的故障信息。
在一些实施例中,所述识别单元,还用于:
获取显示界面中的焦点窗口的位置信息;
根据所述焦点窗口的位置信息确定所述焦点窗口所标识的目标应用。
在一些实施例中,所述应用故障检测装置还包括发送单元,还用于:
获取所述目标应用针对所述焦点窗口的焦点控制通道;
识别所述焦点控制通道对应的等候队列中的信号任务量,并根据所述信号任务量确定是否向所述目标应用发送模拟控制信号。
在一些实施例中,所述发送单元,还用于:
若检测所述信号任务量小于预设任务量阈值,则基于所述焦点控制通道,向所述目标应用发送模拟控制信号。
在一些实施例中,所述发送单元,还用于:
若检测所述信号任务量大于预设任务量阈值,则识别所述等候队列中信号任务对应的信号类型;
若识别到所述信号类型为真实控制信号,则停止向所述目标应用发送模拟控制信号,并获取所述目标应用在处理所述真实控制信号的处理时长,以根据所述真实控制信号的处理时长确定所述目标应用是否存在应用故障。
在一些实施例中,所述确定单元,还用于:
识别所述更新后的预设记录表中每一响应故障子事件的故障时间;
根据所述每一响应故障子事件的故障时间,确定所述更新后的预设记录表对应的故障时间序列;
根据所述故障时间序列,确定所述目标应用的故障信息。
在一些实施例中,所述确定单元,还用于:
获取所述故障时间序列中所述目标应用的各焦点窗口在预设时长内包含响应故障子事件的数量;
将在所述预设时长内包含多个响应故障子事件的焦点窗口确定为故障焦点窗口,并生成所述目标应用针对所述故障焦点窗口对应的故障信息。
在一些实施例中,所述应用故障检测装置还包括应用更新单元,还用于:
根据所述目标应用的故障信息生成故障处理请求,并将所述故障处理请求发送至服务器,所述故障处理请求用于指示所述服务器返回所述故障信息的目标逻辑包;
在检测到所述服务器返回所述目标逻辑包时,根据所述目标逻辑包对所述目标应用的预设模拟逻辑进行更新。
此外,本申请实施例还提供一种计算机设备,包括处理器和存储器,所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序实现本申请实施例提供的应用故障检测方法中的步骤。
此外,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种应用故障检测方法中的步骤。
此外,本申请实施例还提供一种计算机程序,所述计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例所提供的任一种应用故障检测方法中的步骤。
本申请实施例可以识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。由此可得,本方案通过检测焦点窗口标示的目标应用,以确定当前正在运行的目标应用,进而,通过向目标应用发送模拟控制信号进行检测,以确定目标应用在处理所述模拟控制信号时的模拟事件时长,进而,在根据模拟事件时长判断目标应用存在响应故障时,将本次故障记载至预设记录表,并根据预设记录表中的信息确定目标应用的故障信息;以此,可及时检测出应用故障,可提高应用故障的检测效率及准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的应用故障检测系统的场景示意图;
图2为本申请实施例提供的应用故障检测方法的步骤流程示意图;
图3是本申请实施例提供的应用故障检测方法的又一步骤流程示意图;
图4是本申请实施例提供的应用故障检测方法的方框流程示意图;
图5是本申请实施例提供的应用故障检测装置的结构示意图;
图6是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种应用故障检测方法、装置以及计算机可读存储介质。本申请实施例将从应用故障检测装置的角度进行描述,该应用故障检测装置具体可以集成在计算机设备中,该计算机设备可以是终端等设备。其中,终端可以是电视、智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
例如,参见图1,为本申请实施例提供的应用故障检测方法的场景示意图。该场景包括终端或服务器。
终端或服务器可以识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。
其中,应用故障检测可以包括识别目标应用、记录发送时间和接收时间、计算模拟事件时长、更新预设记录表、确定故障信息等处理方式。
以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
在本申请实施例中,将从应用故障检测装置的角度进行描述,以该应用故障检测装置具体可以集成在计算机设备如终端中。参见图2,图2为本申请实施例提供的一种应用故障检测方法的步骤流程示意图,终端上的处理器执行应用故障检测方法对应的程序时,该应用故障检测方法的具体流程如下:
101、识别显示界面中焦点窗口所标示的目标应用。
需要说明的是,本申请实施例将以终端作为执行主体进行描述,该终端集成有应用故障检测装置,该终端上安装有应用程序,当终端执行应用故障检测方法,可以对相关的应用程序进行故障检测。
其中,该显示界面可以是终端显示屏上的显示画面,该显示界面可显示有一个或多个应用,还可显示一些文本。
其中,该焦点窗口(Focus Window)为应用窗口的一个属性,其属于显示界面中应用的“焦点状态”,用于对显示界面上当前正在被用户/目标对象所操控的应用进行标示,该焦点窗口所标示的应用表示处于活动窗口的应用。需要说的是,该焦点窗口可以对整个应用进行标示,还可仅对应用中的某一按钮组件进行标示。例如,以电视机作为终端设备为例,电视机上安装有视频应用,用户通过遥控器对电视机上的视频应用进行操控,当用户通过遥控器发送一个或多个按键信号至电视机时,电视机会响应接收到的按键信号,并控制焦点窗口向视频应用上相应的按钮组件或目标区域进行移动,并将焦点窗口(焦点状态)停留在相应的按钮组件或目标区域上,则该视频应用为焦点窗口所标示的目标应用。又如,以手机作为终端为例,手机显示界面上正在打开音乐应用,手机在检测到用户对音乐应用上的“我的音乐”按钮组件的触控信号,将焦点窗口标示在音乐应用上的“我的音乐”按钮区域上,而手机的处理器在可根据焦点窗口所标示的情况,将音乐应用确定为目标应用。
其中,该目标应用为终端的显示界面当前可被操控的应用。
为了确定终端当前可检测的目标应用,本申请实施例的终端可通过识别终端显示界面上的焦点窗口,从而确定焦点窗口所标示的应用,以得到终端上当前可被操控的目标应用,以便于后续对该可操控的目标应用进行故障检测。
需要说明的是,同一时刻,终端上通常仅有一个可操控的应用;本申请实施例可以是对用户/目标对象正在使用的目标应用进行故障主动检测,如对应用进行响应/处理控制信号的检测,以获悉目标应用的健康情况。
在一些实施方式中,步骤“识别显示界面中焦点窗口所标示的目标应用”,可以包括:获取显示界面中的焦点窗口的位置信息;根据焦点窗口的位置信息确定焦点窗口所标识的目标应用。
其中,该位置信息可以是焦点窗口在显示界面所停留的位置信息,具体的,该位置信息可以是坐标信息、界面区域信息等。此外,该位置信息还可以结合目标应用的应用界面进行确定,如目标应用的应用界面在显示界面上的布局一般为全屏布局或占屏比最大,可以将焦点窗口在显示界面的位置和在应用显示画面上的区域位置进行结合,从而确定焦点窗口的位置信息。
具体的,为了确定终端当前可被操控的目标应用,本申请实施例可以获取显示界面中的焦点窗口所在的位置信息,以及确定相关应用的应用界面(应用窗口画面)在终端的显示界面中的显示情况,如全屏显示或占屏比的情况,从而根据位置信息确定焦点窗口与应用界面(应用窗口画面)之间的关系,如根据位置信息确定焦点是否显示在显示界面中的哪个应用界面上显示,从而将焦点窗口所在的应用确定为目标应用。由于该目标应用为终端显示界面上当前唯一可会直接响应或处理接收到的控制信号的应用,以此,确定终端当前可被操控的目标应用,以便于后续对目标应用进行故障检测。
通过以上方式,可以确定终端当前可被操控的目标应用,以便于后续对目标应用进行故障检测。
102、记录向目标应用发送模拟控制信号时的发送时间。
需要说明的是,本申请实施例的终端在确定当前可直接响应/处理控制信号的目标应用后,生成用于应用故障检测的模拟控制信号,并将模拟控制信号发送给目标应用,使得目标应用做出相应的处理,如使得目标应用执行模拟控制信号对应的预设模拟逻辑,并在执行完成后,返回该预设模拟逻辑对应的运行完成通知。
需要说明的是,本申请实施例在对目标应用进行故障检测,主要是针对目标应用上的焦点窗口进行响应故障检测,本申请实施例可以通过目标应用在处理模拟控制信号的事件时长来确定是否存在故障。因此,在向目标应用发送模拟控制信号时,需要记录对应的发送时间,以便于与后续目标应用完成响应模拟控制信号后的通知接收时间结合,确定目标应用在处理模拟控制信号时的模拟事件时长。
其中,该模拟控制信号可以是对目标应用具有控制作用的信号,该模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑。需要说明的是,该模拟控制信号与真实控制信号不同,该模拟控制信号可以是一个目标应用可响应的空信号,此时,目标应用在接收到模拟控制信号后,可以处理该模拟控制信号,具体处理逻辑需要根据应用的预设模拟逻辑而定;如目标应用为了应对故障检测,可以预先在目标应用的安装包(SDK)中加入预设模拟逻辑的代码文件,以便于目标应用在处理模拟控制信号时,执行对应的预设模拟逻辑。
其中,该预设模拟逻辑可以是空实现方法的逻辑,该空实现方法是指在目标应用的框架代码中默认实现。需要说明的是,该空实现方法的逻辑是指目标应用针对模拟控制信号进行响应/处理,但在处理过程中无需作出具体的策略,即模拟控制信号对于目标应用而言只需响应即可。
本申请实施例在对目标应用进行故障检测时,可以是对目标应用上的焦点窗口的响应情况进行检测,以确定焦点窗口在目标应用上是否得到响应。因此,为了避免用于测试的信号与其他真实控制信号造成紊乱,以及为了提高对目标应用响应情况的检测效率,本申请实施例在对目标应用进行故障检测时,通过终端自主生成的模拟控制信号,并向目标应用发送模拟控制信号,以使得目标应用在对模拟控制信号进行响应时,以执行预设模拟逻辑(如空实现方法),从而达到节省检测耗时的作用,进而,提高对目标应用的故障检测效率。此外,本申请实施例在进行故障检测时,无需依赖用户触发真实控制信号,使得终端通过模拟控制信号进行自主测试,使得故障检测过程具有时效性和及时性。
在一些实施方式中,由于当前确定的目标应用为用户可直接操控的应用,其需要对用户触发的真实控制信号进行响应;在对目标应用进行故障测试时,目标应用需要短时间内响应用户触发的真实控制信号和终端自主生成的模拟控制信号等多个信号,这会增加目标应用的响应负担,且影响终端自主检测的进度。为了避免以上现象,提高对目标应用进行故障检测时的效率,本申请实施例在步骤“记录向目标应用发送模拟控制信号时的发送时间”之前,可以包括:
(1)获取目标应用针对焦点窗口的焦点控制通道;
(2)识别焦点控制通道对应的等候队列中的信号任务量,并根据信号任务量确定是否向目标应用发送模拟控制信号。
其中,该焦点控制通道可以是用于传输控制信号的信号通道,该焦点控制通道所传输的控制信号用于对目标应用上的焦点窗口进行控制,如控制焦点窗口移动至目标应用上的下一个按钮组件或组件区域。需要说明的是,本申请实施例在对目标应用进行故障检测时,主要是通过模拟控制信号对焦点窗口进行的响应进行故障检测,但由于预设模拟逻辑(如“可实现方法”逻辑)不做具体处理,所以目标应用在接收到模拟控制信号后仅作出响应即可,即目标应用上的焦点窗口不会发生移动。因此,该焦点控制通道还可用于向目标应用传输终端生成的模拟控制信号。
其中,该等候队列为包含目标应用需要响应并处理的控制信号的队列,当控制信号通过焦点控制通道传输至目标应用后,会将控制信号(如真实控制信号或模拟控制信号)加入等候队列,使得目标应用根据各信号的接收时序依次进行响应和处理。
其中,该信号任务量为目标应用即将要响应和处理的信号数量。
具体的,为了减轻目标应用的响应负担,提高对目标应用进行故障检测时的效率,本申请实施例在通过模拟控制信号对目标应用进行故障检测前,先获取目标应用针对焦点窗口的焦点控制通道,并识别焦点控制通道对应的等候队列中的信号任务量,以确定目标应用针对焦点窗口的待处理的信号任务量,从而,根据信号任务量情况确定在当前时刻是否向目标应用发送模拟控制信号。
在一些实施方式中,步骤“根据信号任务量确定是否向目标应用发送模拟控制信号”,具体可以包括两种情况:
一、若检测信号任务量小于预设任务量阈值,则基于焦点控制通道,向目标应用发送模拟控制信号。
二、若检测信号任务量大于或等于预设任务量阈值,则识别等候队列中信号任务对应的信号类型;若识别到信号类型为真实控制信号,则停止向目标应用发送模拟控制信号,并获取目标应用在处理真实控制信号的处理时长,以根据真实控制信号的处理时长确定目标应用是否存在应用故障。
其中,为了避免目标应用需要短时间内响应多个信号,可以设定预设任务量阈值,以根据预设任务量阈值确定是否向目标应用发送模拟控制信号进行检测。例如,该预设任务量阈值可以为1,即在存在1个等候响应的信号时,将不向目标应用发送模拟控制信号进行检测,以减轻目标应用在响应控制信号时的压力。
具体的,本申请实施例在确定是否向目标应用发送模拟控制信号时,可以仅对焦点控制通道对应的等候队列中的真实控制信号进行限定,当等候队列中信号任务量大于预或等于预设任务量阈值,且该候队列中信号任务对应的信号类型为真实控制信号,则不向目标应用发送模拟控制信号。进而,为了确定目标应用在处理真实控制信号时是否存在故障,具体的,获取该真实控制信号的发送时间,并等待目标应用完成对真实控制信号的响应和处理后,确定其完成处理时间,以根据发送时间和完成处理时间确定目标应用对真实控制信号的处理时长,进而,将真实控制信号的处理时长与预设处理时长阈值进行对比,如设定该预设处理时长阈值为100ms,当真实控制信号的处理时长大于100ms时,确定目标应用存在故障,反之则不存在故障。
通过以上方式,在向目标应用发送模拟控制信号时,终端的处理器先记录对应的发送时间,以便于与后续目标应用完成响应模拟控制信号后的通知接收时间结合,确定目标应用在处理模拟控制信号时的模拟事件时长。
103、若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长。
其中,该接收时间是指目标应用在对模拟控制信号进行响应后发出完成通知的时间,该接收时间与完成响应的时间相同或相近。
其中,该模拟事件时长可以是目标应用在完成响应/处理模拟控制信号所耗费的时长。
具体的,为了确定的目标应用在处理模拟控制信号所耗费的模拟事件时长,本申请实施例在接收到目标应用返回预设模拟逻辑对应的运行完成通知时,终端记录在接收该运行完成通知的接收时间,进而,根据前面的发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长。以此,以便于后续根据模拟事件时长确定目标应用是否存在响应故障。
104、若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表。
具体的,在得到目标应用在处理模拟控制信号时的模拟事件时长后,将模拟事件时长与预设时间阈值进行对比;当模拟事件时长大于预设时间阈值时,说明目标应用在处理模拟控制信号时具有响应故障,此时,生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表,得到更新后的预设记录表。
其中,该预设记录表可以是目标应用针对当前的焦点窗口的信号处理记录表,用于对模拟控制信号的响应故障子事件进行统计,其可包含目标应用在历史时间内响应故障的事件记录。需要说明的是,该预设记录表可以是运算线性表,例如,可以是堆栈的形式的记录表,当目标应用在响应和处理模拟控制信号延迟时,则生成本次模拟控制信号的响应故障子事件,即目标应用针对焦点窗口的响应故障子事件,并将该响应故障子事件入栈,以对该响应故障子事件进行记录。
105、根据更新后的预设记录表,确定目标应用的故障信息。
其中,该故障信息可以反映目标应用所存在的故障情况,其不限于目标应用的响应故障情况,例如,响应延迟、焦点窗口控制错误等。
为了确定目标应用是否存在故障信息,本申请实施例在得到更新后的预设记录表后,可根据预设记录表中记录的响应故障子事件,确定目标应用的故障信息。
在一些实施方式中,步骤“根据更新后的预设记录表,确定目标应用的故障信息”,可以包括:
(1)识别更新后的预设记录表中每一响应故障子事件的故障时间;
(2)根据每一响应故障子事件的故障时间,确定更新后的预设记录表对应的故障时间序列;
(3)根据故障时间序列,确定目标应用的故障信息。
在每次根据响应故障子事件对预设记录表进行更新后,可以结合更新后的预设记录表中的多个响应故障子事件,确定是否生成目标应用的故障信息。具体的,识别更新后的预设记录表中每一响应故障子事件的故障时间,该故障时间为在确定目标应用存在对应的响应故障的时间,也可以是生成响应故障子事件的时间;接着,基于每一响应故障子事件的故障时间,对更新后的预设记录表中的所有响应故障子事件进行排序,以确定所有响应故障子事件的故障时间序列;进而,根据故障时间序列,确定目标应用的故障信息,如根据故障时间序列中序列信息确定最近几次响应故障子事件的故障情况,以根据最近几次响应故障子事件的故障情况确定目标应用的故障信息。
在一些实施方式中,步骤“根据故障时间序列,确定目标应用的故障信息”,可以包括:获取故障时间序列中目标应用的各焦点窗口在预设时长内包含响应故障子事件的数量;将在预设时长内包含多个响应故障子事件的焦点窗口确定为故障焦点窗口,并生成目标应用针对故障焦点窗口对应的故障信息。
其中,该预设时长可以是在当前时间之前的历史时长,如过去500ms、1秒、5秒等。此外,在设定预设时长时,可以根据目标应用在响应和处理一个真实控制信号的处理周期(时长)或处理周期的数倍来确定,如一个真实控制信号的处理周期为100ms,则可设置预设时长为500ms,此处不做具体限定。
具体的,为了确定目标应用的故障信息,本申请实施例在得到所有响应故障子事件的故障时间序列后,基于故障时间序列,确定在预设时长内包含响应故障子事件的数量;在识别到预设时长内包含响应故障子事件的数量为多个时,如包含3个,则确定包含多个响应故障子事件对应的焦点窗口存在异常,具体为目标应用针对该焦点窗口的模拟控制信号存在响应/处理异常,因此,生成目标应用针对故障焦点窗口对应的故障信息,以确定检测到目标应用存在故障。
此外,在检测到目标应用存在故障时,为了对目标应用的故障进行修复,可以请求目标应用的服务端下发响应的更新包。具体的,步骤“根据故障时间序列,确定目标应用的故障信息”之后,可以包括:
根据目标应用的故障信息生成故障处理请求,并将故障处理请求发送至服务器,故障处理请求用于指示服务器返回故障信息的目标逻辑包;在检测到服务器返回目标逻辑包时,根据目标逻辑包对目标应用的预设模拟逻辑进行更新。
由以上可知,本申请实施例可以识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。由此可得,本方案通过检测焦点窗口标示的目标应用,以确定当前正在运行的目标应用,进而,通过向目标应用发送模拟控制信号进行检测,以确定目标应用在处理模拟控制信号时的模拟事件时长,进而,在根据模拟事件时长判断目标应用存在响应故障时,将本次故障记载至预设记录表,并根据预设记录表中的信息确定目标应用的故障信息;以此,可及时检测出应用故障,可提高应用故障的检测效率及准确性。
在本申请实施例中,将从应用故障检测装置的角度进行描述,以该应用故障检测装置具体可以集成在计算机设备如终端和服务器中。参见图3和图4,图3为本申请实施例提供的应用故障检测方法的又一步骤流程示意图,图4为本申请实施例提供的应用故障检测方法的方框流程示意图,为了便于理解,本实施例将结合图3和图4进行叙述。
其中,服务器上的处理器执行应用故障检测方法对应的程序时,该应用故障检测方法的具体流程如下:
201、获取显示界面中的焦点窗口的位置信息。
其中,该焦点窗口(Focus Window)为应用窗口的一个属性,其属于显示界面中应用的“焦点状态”,用于对显示界面上当前正在被用户/目标对象所操控的应用进行标示。
其中,该位置信息可以是焦点窗口在显示界面所停留的位置信息,具体的,该位置信息可以是坐标信息、界面区域信息等。
202、根据焦点窗口的位置信息确定焦点窗口所标识的目标应用。
为了确定终端当前可被操控的目标应用,本申请实施例可以获取显示界面中的焦点窗口所在的位置信息,以及确定相关应用的应用界面(应用窗口画面)在终端的显示界面中的显示情况,如全屏显示或占屏比的情况,从而根据位置信息确定焦点窗口与应用界面(应用窗口画面)之间的关系,如根据位置信息确定焦点是否显示在显示界面中的哪个应用界面上显示,从而将焦点窗口所在的应用确定为目标应用。
203、获取目标应用针对焦点窗口的焦点控制通道。
其中,该焦点控制通道可以是用于传输控制信号的信号通道,该焦点控制通道所传输的控制信号用于对目标应用上的焦点窗口进行控制,如控制焦点窗口移动至目标应用上的下一个按钮组件或组件区域。
204、识别焦点控制通道对应的等候队列中的信号任务量,根据信号任务量确定是否向目标应用发送模拟控制信号。
需要说明的是,由于当前确定的目标应用为用户可直接操控的应用,其需要对用户触发的真实控制信号进行响应;在对目标应用进行故障测试时,目标应用需要短时间内响应用户触发的真实控制信号和终端自主生成的模拟控制信号等多个信号,这会增加目标应用的响应负担,且影响终端自主检测的进度。
为了避免以上现象,本申请实施例在通过模拟控制信号对目标应用进行故障检测前,确定目标应用针对焦点窗口的待处理的信号任务量,从而,根据信号任务量情况确定在当前时刻是否向目标应用发送模拟控制信号。以此,可在对目标应用进行故障检测时,提高对目标应用进行故障检测时的效率。
需要说明的是,在对目标应用进行故障检测,可包括两种情况:一、在目标应用当前不具有其他待处理的控制信号时,终端生成模拟控制信号对目标应用进行故障检测,具体执行步骤205-210;二、目标应用当前具有其他待处理的真实控制信号时,具体执行步骤211-212。
205、若检测信号任务量小于预设任务量阈值,则基于焦点控制通道,向目标应用发送模拟控制信号。
其中,该模拟控制信号可以是对目标应用具有控制作用的信号,该模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑。
需要说明的是,该模拟控制信号可以是一个目标应用可响应的空信号,此时,目标应用在接收到模拟控制信号后,可以处理该模拟控制信号,具体处理逻辑需要根据应用的预设模拟逻辑而定;如目标应用为了应对故障检测,可以预先在目标应用的安装包(SDK)中加入预设模拟逻辑的代码文件,以便于目标应用在处理模拟控制信号时,执行对应的预设模拟逻辑。
具体的,生成用于应用故障检测的模拟控制信号,并将模拟控制信号发送给目标应用,使得目标应用做出相应的处理,如使得目标应用执行模拟控制信号对应的预设模拟逻辑,并在执行完成后,返回该预设模拟逻辑对应的运行完成通知。
206、记录向目标应用发送模拟控制信号时的发送时间。
207、若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长。
需要说明的是,本申请实施例在对目标应用进行故障检测,主要是针对目标应用上的焦点窗口进行响应故障检测,本申请实施例可以通过目标应用在处理模拟控制信号的事件时长来确定是否存在故障。因此,在向目标应用发送模拟控制信号时,需要记录对应的发送时间,且在目标应用完成响应模拟控制信号后发出通知时,记录该通知的接收时间,进而,根据发送时间及接收时间的时间差确定目标应用在处理模拟控制信号时的模拟事件时长。
208、若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表。
例如,该预设记录表可以是运算线性表,如堆栈,当目标应用在响应和处理模拟控制信号延迟时,则生成本次模拟控制信号的响应故障子事件,即目标应用针对焦点窗口的响应故障子事件,并将该响应故障子事件入栈,以对该响应故障子事件进行记录。
209、识别更新后的预设记录表中每一响应故障子事件的故障时间,并根据每一响应故障子事件的故障时间确定更新后的预设记录表对应的故障时间序列。
210、确定故障时间序列中在预设时长内包含多个响应故障子事件的故障焦点窗口,并生成目标应用针对故障焦点窗口对应的故障信息。
其中,该预设时长可以是在当前时间之前的历史时长,根据目标应用在响应和处理一个真实控制信号的处理周期的数倍来确定。例如,一个真实控制信号的处理周期为100ms,则可设置预设时长为500ms。
例如,基于故障时间序列,在确定过去500ms中包含3个响应故障子事件时,将该响应故障子事件对应的焦点窗口确定为故障焦点窗口,则生成该目标应用的故障信息,如响应延迟次数、频率等。
211、若检测信号任务量大于或等于预设任务量阈值,则识别等候队列中信号任务对应的信号类型。
212、若识别到信号类型为真实控制信号,则获取目标应用在处理真实控制信号的处理时长,以根据真实控制信号的处理时长确定目标应用是否存在应用故障。
结合图4,为本申请实施例提供的应用故障检测方法的方框流程示意图,通过执行步骤201-212,可实现如下:
该场景以电视机作为终端设备为例,电视机上安装有视频应用或其他目标应用,用户可通过遥控器对电视机上的视频应用进行操控;该场景主要是模拟用户通过遥控器发送一个或多个按键信号(真实控制信号)至电视机,以对电视机上的目标应用对信号进行响应和处理,以根据处理时长来确定目标应用是否存在故障。需要说明的是,该模拟场景中,可通过终端生成的模拟控制信号替代用户触发的“按键信号”,具体场景如下:
(1)获取焦点窗口对应的焦点通信管道(焦点控制通道),并判断焦点通信管道对应的等待队列是否非空且不存在模拟按键信号(模拟控制信号),意味着目标应用正在处理其它按键信号(真实控制信号),为避免提升按键分发压力,通过ANR检测逻辑进行应用故障检测,并暂停模拟场景的故障检测。反之,则通过模拟场景,对目标应用进行故障检测。
(2)在模拟场景中,每100毫秒,向焦点窗口发送模拟按键信号,电视机并记录时间T1,发送完成后把模拟按键加入到等待队列。
(3)目标应用(app端)接收模拟按键信号后,根据按键码判断该事件为模拟按键,然后执行空实现方法,此方法在框架代码中默认实现,而目标应用不需要重写,空方法不执行任何业务也就不存在执行耗时。进而,app端在执行完成后,通知电视机系统分发线程将该事件从等待队列移除,并记录时间T2。
(4)电视机系统从等待队列移除时,判断按键处理是否耗时(T2-T1>100毫秒),如果处理耗时,则获取主线程堆栈,并且卡顿(故障子事件)计数增加1。
(5)判断同一焦点窗口500毫秒内卡顿计数是否大于3次,满足则上报出现次数最多的堆栈;反之则不做处理。
由以上可知,本申请实施例可以识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。由此可得,本方案通过检测焦点窗口标示的目标应用,以确定当前正在运行的目标应用,进而,通过向目标应用发送模拟控制信号进行检测,以确定目标应用在处理模拟控制信号时的模拟事件时长,进而,在根据模拟事件时长判断目标应用存在响应故障时,将本次故障记载至预设记录表,并根据预设记录表中的信息确定目标应用的故障信息;以此,可及时检测出应用故障,可提高应用故障的检测效率及准确性。
以上各个操作的具体实施可参见前面的实施例,在此不作赘述。
为了更好地实施以上方法,本申请实施例还提供一种应用故障检测装置,该应用故障检测装置可以集成在计算机设备,比如服务器等计算机设备中。
例如,如图5所示,该应用故障检测装置可以包括识别单元501、记录单元502、计算单元503、更新单元504和确定单元505。
识别单元501,用于识别显示界面中焦点窗口所标示的目标应用;
记录单元502,用于记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;
计算单元503,用于若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;
更新单元504,若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;
确定单元505,用于根据更新后的预设记录表,确定目标应用的故障信息。
在一些实施例中,识别单元501,还用于:
获取显示界面中的焦点窗口的位置信息;根据焦点窗口的位置信息确定焦点窗口所标识的目标应用。
在一些实施例中,应用故障检测装置还包括发送单元,还用于:
获取目标应用针对焦点窗口的焦点控制通道;识别焦点控制通道对应的等候队列中的信号任务量,根据信号任务量确定是否向目标应用发送模拟控制信号。
在一些实施例中,发送单元,还用于:
若检测信号任务量小于预设任务量阈值,则基于焦点控制通道,向目标应用发送模拟控制信号。
在一些实施例中,发送单元,还用于:
若检测信号任务量大于预设任务量阈值,则识别等候队列中信号任务对应的信号类型;若识别到信号类型为真实控制信号,则停止向目标应用发送模拟控制信号,并获取目标应用在处理真实控制信号的处理时长,以根据真实控制信号的处理时长确定目标应用是否存在应用故障。
在一些实施例中,确定单元505,还用于:
识别更新后的预设记录表中每一响应故障子事件的故障时间;根据每一响应故障子事件的故障时间,确定更新后的预设记录表对应的故障时间序列;根据故障时间序列,确定目标应用的故障信息。
在一些实施例中,确定单元,还用于:
获取故障时间序列中目标应用的各焦点窗口在预设时长内包含响应故障子事件的数量;将在预设时长内包含多个响应故障子事件的焦点窗口确定为故障焦点窗口,并生成目标应用针对故障焦点窗口对应的故障信息。
在一些实施例中,应用故障检测装置还包括应用更新单元,还用于:
根据目标应用的故障信息生成故障处理请求,并将故障处理请求发送至服务器,故障处理请求用于指示服务器返回故障信息的目标逻辑包;在检测到服务器返回目标逻辑包时,根据目标逻辑包对目标应用的预设模拟逻辑进行更新。
由上可知,本申请实施例可以通过识别单元501识别显示界面中焦点窗口所标示的目标应用;通过记录单元502记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;计算单元503用于若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;更新单元504用于若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;通过确定单元505根据更新后的预设记录表,确定目标应用的故障信息。由此可得,本方案通过检测焦点窗口标示的目标应用,以确定当前正在运行的目标应用,进而,通过向目标应用发送模拟控制信号进行检测,以确定目标应用在处理模拟控制信号时的模拟事件时长,进而,在根据模拟事件时长判断目标应用存在响应故障时,将本次故障记载至预设记录表,并根据预设记录表中的信息确定目标应用的故障信息;以此,可及时检测出应用故障,可提高应用故障的检测效率及准确性。
本申请实施例还提供一种计算机设备,如图6所示,其示出了本申请实施例所涉及的计算机设备的结构示意图,具体来讲:
该计算机设备可以包括一个或者一个以上处理核心的处理器601、一个或一个以上计算机可读存储介质的存储器602、电源603和输入单元604等部件。本领域技术人员可以理解,图6中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器601是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器601可包括一个或多个处理核心;优选的,处理器601可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。
存储器602可用于存储软件程序以及模块,处理器601通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及应用故障检测。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器601对存储器602的访问。
计算机设备还包括给各个部件供电的电源603,优选的,电源603可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源603还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该计算机设备还可包括输入单元604,该输入单元604可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器601会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能,如下:
识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。
以上各个操作的具体实施可参见前面的实施例,在此不作赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种应用故障检测方法中的步骤。例如,该指令可以执行如下步骤:
识别显示界面中焦点窗口所标示的目标应用;记录向目标应用发送模拟控制信号时的发送时间,模拟控制信号用于指示目标应用运行焦点窗口对应的预设模拟逻辑;若接收到目标应用返回预设模拟逻辑对应的运行完成通知,则记录运行完成通知的接收时间,并根据发送时间及接收时间计算目标应用在处理模拟控制信号时的模拟事件时长;若模拟事件时长大于预设时间阈值,则生成焦点窗口的响应故障子事件,并将响应故障子事件更新至目标应用对应的预设记录表;根据更新后的预设记录表,确定目标应用的故障信息。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
本申请还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中各种可选实现方式中提供的应用故障检测方法。
由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种应用故障检测方法中的步骤,因此,可以实现本申请实施例所提供的任一种应用故障检测方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种应用故障检测方法、装置以及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种应用故障检测方法,其特征在于,包括:
识别显示界面中焦点窗口所标示的目标应用;
记录向所述目标应用发送模拟控制信号时的发送时间,所述模拟控制信号用于指示所述目标应用运行所述焦点窗口对应的预设模拟逻辑;
若接收到所述目标应用返回所述预设模拟逻辑对应的运行完成通知,则记录所述运行完成通知的接收时间,并根据所述发送时间及接收时间计算所述目标应用在处理所述模拟控制信号时的模拟事件时长;
若所述模拟事件时长大于预设时间阈值,则生成所述焦点窗口的响应故障子事件,并将所述响应故障子事件更新至所述目标应用对应的预设记录表;
根据更新后的预设记录表,确定所述目标应用的故障信息。
2.根据权利要求1所述的方法,其特征在于,所述识别显示界面中焦点窗口所标示的目标应用,包括:
获取显示界面中的焦点窗口的位置信息;
根据所述焦点窗口的位置信息确定所述焦点窗口所标识的目标应用。
3.根据权利要求1所述的方法,其特征在于,所述记录向所述目标应用发送模拟控制信号时的发送时间之前,还包括:
获取所述目标应用针对所述焦点窗口的焦点控制通道;
识别所述焦点控制通道对应的等候队列中的信号任务量,并根据所述信号任务量确定是否向所述目标应用发送模拟控制信号。
4.根据权利要求3所述的方法,其特征在于,所述根据所述信号任务量确定是否向所述目标应用发送模拟控制信号,包括:
若检测所述信号任务量小于预设任务量阈值,则基于所述焦点控制通道,向所述目标应用发送模拟控制信号。
5.根据权利要求3所述的方法,其特征在于,所述根据所述信号任务量确定是否向所述目标应用发送模拟控制信号,还包括:
若检测所述信号任务量大于或等于预设任务量阈值,则识别所述等候队列中信号任务对应的信号类型;
若识别到所述信号类型为真实控制信号,则停止向所述目标应用发送模拟控制信号,并获取所述目标应用在处理所述真实控制信号的处理时长,以根据所述真实控制信号的处理时长确定所述目标应用是否存在应用故障。
6.根据权利要求1所述的方法,其特征在于,所述根据更新后的预设记录表,确定所述目标应用的运行故障信息,包括:
识别所述更新后的预设记录表中每一响应故障子事件的故障时间;
根据所述每一响应故障子事件的故障时间,确定所述更新后的预设记录表对应的故障时间序列;
根据所述故障时间序列,确定所述目标应用的故障信息。
7.根据权利要求6所述的方法,其特征在于,所述根据所述故障时间序列,确定所述目标应用的故障信息,包括:
获取所述故障时间序列中所述目标应用的各焦点窗口在预设时长内包含响应故障子事件的数量;
将在所述预设时长内包含多个响应故障子事件的焦点窗口确定为故障焦点窗口,并生成所述目标应用针对所述故障焦点窗口对应的故障信息。
8.根据权利要求1所述的方法,其特征在于,所述根据更新后的预设记录表,确定所述目标应用的故障信息之后,还包括:
根据所述目标应用的故障信息生成故障处理请求,并将所述故障处理请求发送至服务器,所述故障处理请求用于指示所述服务器返回所述故障信息的目标逻辑包;
在检测到所述服务器返回所述目标逻辑包时,根据所述目标逻辑包对所述目标应用的预设模拟逻辑进行更新。
9.一种应用故障检测装置,其特征在于,包括:
识别单元,用于识别显示界面中焦点窗口所标示的目标应用;
记录单元,用于记录向所述目标应用发送模拟控制信号时的发送时间,所述模拟控制信号用于指示所述目标应用运行所述焦点窗口对应的预设模拟逻辑;
计算单元,用于若接收到所述目标应用返回所述预设模拟逻辑对应的运行完成通知,则记录所述运行完成通知的接收时间,并根据所述发送时间及接收时间计算所述目标应用在处理所述模拟控制信号时的模拟事件时长;
更新单元,若所述模拟事件时长大于预设时间阈值,则生成所述焦点窗口的响应故障子事件,并将所述响应故障子事件更新至所述目标应用对应的预设记录表;
确定单元,用于根据更新后的预设记录表,确定所述目标应用的故障信息。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质为计算机可读并存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至8任一项所述的应用故障检测方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210061997.6A CN114490155A (zh) | 2022-01-19 | 2022-01-19 | 应用故障检测方法、装置以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210061997.6A CN114490155A (zh) | 2022-01-19 | 2022-01-19 | 应用故障检测方法、装置以及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114490155A true CN114490155A (zh) | 2022-05-13 |
Family
ID=81472844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210061997.6A Pending CN114490155A (zh) | 2022-01-19 | 2022-01-19 | 应用故障检测方法、装置以及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114490155A (zh) |
-
2022
- 2022-01-19 CN CN202210061997.6A patent/CN114490155A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104834602B (zh) | 一种程序发布方法、装置和程序发布系统 | |
CN112181619B (zh) | 批量业务的调度方法、装置、设备及介质 | |
CN110727473B (zh) | 资源控制方法及装置、系统、存储介质和电子设备 | |
CN108415765B (zh) | 任务调度方法、装置及智能终端 | |
CN104809054B (zh) | 实现程序测试的方法和系统 | |
CN115481030A (zh) | 一种自动化测试方法、装置、终端及存储介质 | |
CN114328132A (zh) | 外部数据源的状态监控方法、装置、设备和介质 | |
WO2024164682A1 (zh) | 基于综合调度系统监控列车的方法、介质、装置及系统 | |
CN112392688B (zh) | 机组调试方法、装置、系统、设备和存储介质 | |
CN104699535B (zh) | 一种信息处理方法及电子设备 | |
CN112631843A (zh) | 设备测试方法及装置、电子设备、可读介质、产品 | |
CN114490155A (zh) | 应用故障检测方法、装置以及计算机可读存储介质 | |
CN115890684A (zh) | 一种机器人调度方法、装置、设备及介质 | |
CN115437865A (zh) | 一种硬盘异常掉电测试方法、装置、设备及介质 | |
CN114490134A (zh) | 事件处理方法、系统、装置、计算机设备和存储介质 | |
CN114489892A (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN113595814A (zh) | 消息延迟检测方法、装置、电子设备及存储介质 | |
CN116737428B (zh) | 空气质量模式运行的稳定性检查方法、装置及电子设备 | |
CN110737320A (zh) | 耗电量检测方法、装置、电子设备及存储介质 | |
CN115622968B (zh) | 一种黑产行为阻断方法、装置、计算机设备及存储介质 | |
CN109582535B (zh) | 应用运行控制方法、装置、存储介质及电子设备 | |
CN113127051B (zh) | 一种应用资源打包过程监控方法、装置、设备和介质 | |
CN107390981A (zh) | 一种全局菜单的控制方法、装置、设备和存储介质 | |
CN116361133A (zh) | 一种业务处理的产能评估方法、装置、终端及存储介质 | |
CN116302679A (zh) | 数据库的配置方法、装置、存储介质及计算机设备 |
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 |