本申请实施例提供了一种应用程序的测试方法、装置及电子设备。该方法包括:接收到针对目标应用程序的当前测试用例的控制操作时,检测与控制操作相应的系统资源的状态;当检测到与控制操作相应的系统资源的状态为忙碌时,控制当前测试用例暂停执行,并基于预定检测周期循环执行检测与控制操作相应的系统资源的状态的步骤;当检测到与控制操作相应的系统资源的状态为空闲时,继续执行当前测试用例。本申请实施例保证在测试过程中与控制操作相应的系统资源的状态为空闲的时才可以执行该控制操作,可防止因系统资源被占用导致的测试失败问题,从而提高测试成功率。
Test method, device and electronic equipment of application program
【技术实现步骤摘要】
应用程序的测试方法、装置及电子设备
本申请涉及测试
,具体而言,本申请涉及一种应用程序的测试方法、装置及电子设备。
技术介绍
在移动终端的应用开发过程中,功能测试是测试过程中最基本的一个环节,主要是通过对应用程序中的各个功能控件的测试,判断应用程序中各个控件是否能够正常执行。应用程序的各个控件从触发至执行,需要请求不同系统资源,例如动画加载,网络请求等。然而相关的测试方法中,无法保证不同控件在测试过程中所需的系统资源,因此测试过程容易因系统资源被占用而导致的测试效率低的问题。
技术实现思路
本申请提供了一种应用程序的测试方法、装置及电子设备,可以解决上述问题。所述技术方案如下:第一方面,本申请提供了一种应用程序的测试方法,该方法包括:接收到针对目标应用程序的当前测试用例的控制操作时,检测与控制操作相应的系统资源的状态;当检测到与控制操作相应的系统资源的状态为忙碌时,控制当前测试用例暂停执行,并基于预定检测周期循环执行检测与控制操作相应的系统资源的状态的步骤;当检测到与控制操作相应的系统资源的状态为空闲时,继续执行当前测试用例。第二方面,本申请提供了一种应用程序的测试装置,该装置包括:状态检测模块,用于接收到针对目标应用程序的当前测试用例的控制操作时,检测与控制操作相应的系统资源的状态;控制处理模块,用于当检测到与控制操作相应的系统资源的状态为忙碌时,控制当前测试用例暂停执行,并基于预定检测周期循环执行检测与控制操作相应的系统资源的状态的步骤;执行处理模块,用于当检测到与控制操作相应的系统资源的状态为空闲时,继续执行当前测试用例。第三方面,本申请提供了一种电子设备,该电子设备包括:一个或多个处理器;存储器;一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行上述应用程序的测试方法。第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述应用程序的测试方法。本申请实施例提供的技术方案带来的有益效果是:接收到针对目标应用程序的当前测试用例的控制操作时,检测与控制操作相应的系统资源的状态,当检测到与控制操作相应的系统资源的状态为忙碌时,控制当前测试用例暂停执行,并基于预定检测周期循环执行检测与控制操作相应的系统资源的状态的步骤,以便当检测到与控制操作相应的系统资源的状态为空闲时,继续执行当前测试用例,保证在测试过程中与控制操作相应的系统资源的状态为空闲时才可以执行该控制操作,可防止因系统资源被占用导致的测试失败问题,从而提高测试成功率。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。图1为本申请实施例提供的一种应用程序的测试方法的流程示意图;图2为本申请实施例提供的另一种应用程序的测试方法的流程示意图;图3为本申请实施例提供的一种应用程序的测试装置的结构示意图;图4为本申请实施例提供的一种电子设备的结构示意图。具体实施方式下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。不同的测试用例执行的动作不同,请求的系统资源也不同,如若执行点击视频的动作,可能需要请求动画、请求网络以及主线程;若执行点赞的动作,仅需要请求动画。因此,若正在执行的测试用例所请求的系统资源被占用,可能回导致该测试用例测试失败,从而无法确定自动化测试针对的应用程序的缺陷和问题,进而降低测试成功率。本申请提供的应用程序的测试方法、装置及电子设备,旨在解决现有技术的如上技术问题。下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。在一个实施例中,本申请实施例提供了一种应用程序的测试方法,如图1所示,该方法包括:步骤S101、步骤S102以及步骤S103。步骤S101、接收到针对目标应用程序的当前测试用例的控制操作时,检测与控制操作相应的系统资源的状态。本申请实施例中,测试用例是针对目标应用程序编写的脚本,可以包括待测试对象以及针对待测试对象的动作。例如,测试用例包括如下几个任务:1、点赞;2、检测点赞的结果;3、退出点赞;4、检测是否退出点赞动作。因此,针对当前测试用例中点赞任务时,控制操作为触发点赞对应的控件。实际应用时,测试时,不同的测试用例按照一定的顺序执行。例如,假设有三个测试用例,分别为测试用例1、测试用例2和测试用例3,测试时,按照这三个测试用例的排列的先后顺序执行。实际应用时,针对当前测试用例的控制操作可以是测试用户触发的,也可以是系统自动触发的。为了达到测试的自动化,实际应用时,测试开始时,可以由用户启动测试,启动后,在第一个测试用例被执行完成后,可自动逐个执行其他测试用例。步骤S102、当检测到与控制操作相应的系统资源的状态为忙碌时,控制当前测试用例暂停执行,并基于预定检测周期循环执行检测与控制操作相应的系统资源的状态的步骤。本申请实施例中,与控制操作相应的系统资源的状态为忙碌时,表明与针对当前测试用例的控制操作相应的系统资源正被其他测试利用使用。例如,假设测试用例1和测试用例2均指向同一视频文件,若测试用例2为当前测试用例,与控制操作相应的系统资源包括动画加载线程、网络请求线程以及主线程,若这些系统资源均被测试用例1占用,那么测试用例2可能存在测试失败的风险,为了提高测试的成功率,控制当前测试用例暂停执行。实际应用时,预定检测周期可以根据实际需求进行设定,本申请实施例中预定检测周期设置为100毫秒,在与控制操作相应的系统资源的状态为忙碌时,每隔100毫秒检测一次。步骤S103、当检测到与控制操作相应的系统资本文档来自技高网...
【技术保护点】
1.一种应用程序的测试方法,其特征在于,包括:/n接收到针对目标应用程序的当前测试用例的控制操作时,检测与所述控制操作相应的系统资源的状态;/n当检测到与所述控制操作相应的系统资源的状态为忙碌时,控制所述当前测试用例暂停执行,并基于预定检测周期循环执行所述检测与所述控制操作相应的系统资源的状态的步骤;/n当检测到与所述控制操作相应的系统资源的状态为空闲时,继续执行所述当前测试用例。/n
【技术特征摘要】
1.一种应用程序的测试方法,其特征在于,包括:
接收到针对目标应用程序的当前测试用例的控制操作时,检测与所述控制操作相应的系统资源的状态;
当检测到与所述控制操作相应的系统资源的状态为忙碌时,控制所述当前测试用例暂停执行,并基于预定检测周期循环执行所述检测与所述控制操作相应的系统资源的状态的步骤;
当检测到与所述控制操作相应的系统资源的状态为空闲时,继续执行所述当前测试用例。
2.根据权利要求1所述的方法,其特征在于,所述检测与所述控制操作相应的系统资源的状态,包括:
通过钩子HOOK函数,获取所述控制操作相应的系统资源的任务状态记录;
依据所述任务状态中同一控制操作对应的时间点,确定与所述控制操作相应的系统资源的状态。
3.根据权利要求2所述的方法,其特征在于,所述与所述控制操作相应的系统资源,包括以下至少一项:
动画加载线程、网络请求线程、应用主线程。
4.根据权利要求1所述的方法,其特征在于,所述检测与所述控制操作相应的系统资源的状态,包括:
确定所述当前测试用例中与所述控制操作相应的测试项;
依据所述测试项来确定与所述控制操作相应的系统资源,并检测与所述控制操作相应的系统资源的状态。
5.根据权利要求1所述的方法,其特征在于,所述当检测到与所述控制操作相应的系统资源的状态为空闲时,继续执行所述当前测试用例,包括:
当检测到与所述控制操作相应的系统资源的状态为空闲时,等待第一预定时长后,继续执行所述当前测试用例。
【专利技术属性】
技术研发人员:宋立,
申请(专利权)人:北京微播视界科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。