应用程序测试方法及装置制造方法及图纸

技术编号:14777418 阅读:126 留言:0更新日期:2017-03-09 13:37
本发明专利技术公开了一种应用程序测试方法及装置,属于计算机技术领域。所述方法应用于运行有互相独立的测试应用程序和被测应用程序的设备中;该方法包括:通过测试应用程序获取由设备的操作系统记录的错误记录信息;根据错误记录信息检测被测应用程序是否发生目标类型的错误;若被测应用程序发生目标类型的错误,则通过测试应用程序获取与目标类型的错误对应的场景信息。本发明专利技术解决了相关技术采用在被测应用程序中集成SDK的方式进行错误检测,所导致的被测应用程序的文件过大以及影响被测应用程序的安全性的问题;既无需在被测应用程序中集成测试应用程序,也无需修改被测应用程序的配置文件,充分避免了对被测应用程序产生上述不利影响。

【技术实现步骤摘要】

本专利技术涉及计算机
,特别涉及一种应用程序测试方法及装置
技术介绍
为了对应用程序在运行过程中可能发生的错误进行检测,一些程序开发商或者测试平台采用在应用程序中集成SDK(SoftwareDevelopmentKit,软件开发工具包)的方式,该集成于应用程序中的SDK用于实现错误检测和上报功能。以对被测应用程序在运行过程中可能发生的Crash(崩溃)类型的错误进行检测为例,在相关技术中,技术人员预先开发用于实现Crash类型的错误检测和上报功能的SDK,然后将该SDK集成到被测应用程序中,并修改被测应用程序的配置文件以确保该SDK能够正常运行。在被测应用程序被用户下载安装并使用之后,集成于被测应用程序中的SDK会检测该被测应用程序是否发生Crash类型的错误,并将相应的检测结果和测试数据上报给测试服务器。然而,上述技术至少存在如下问题:第一,在被测应用程序中集成SDK将会导致被测应用程序的文件过大,对用户下载产生不利影响;第二,修改被测应用程序的配置文件会给被测应用程序带来一些安全风险。
技术实现思路
为了解决相关技术采用在被测应用程序中集成SDK的方式进行错误检测,所导致的被测应用程序的文件过大以及影响被测应用程序的安全性的问题,本专利技术实施例提供了一种应用程序测试方法及装置。所述技术方案如下:第一方面,提供了一种应用程序测试方法,应用于运行有测试应用程序和被测应用程序的设备中,该测试应用程序和被测应用程序之间互相独立,该方法包括:通过测试应用程序获取由设备的操作系统记录的错误记录信息;根据错误记录信息检测被测应用程序是否发生目标类型的错误;若被测应用程序发生目标类型的错误,则通过测试应用程序获取与目标类型的错误对应的场景信息,该场景信息用于指示发生目标类型的错误时的设备状况和错误情况。第二方面,提供了一种应用程序测试装置,应用于运行有测试应用程序和被测应用程序的设备中,该测试应用程序和被测应用程序之间互相独立,该装置包括:信息获取模块,用于通过测试应用程序获取由设备的操作系统记录的错误记录信息;错误检测模块,用于根据错误记录信息检测被测应用程序是否发生目标类型的错误;场景信息获取模块,用于当被测应用程序发生目标类型的错误时,通过测试应用程序获取与目标类型的错误对应的场景信息,该场景信息用于指示发生目标类型的错误时的设备状况和错误情况。本专利技术实施例提供的技术方案带来的有益效果包括:通过独立的测试应用程序对被测应用程序进行错误检测;解决了相关技术采用在被测应用程序中集成SDK的方式进行错误检测,所导致的被测应用程序的文件过大以及影响被测应用程序的安全性的问题;既无需在被测应用程序中集成测试应用程序,也无需修改被测应用程序的配置文件,达到了充分避免对被测应用程序产生不利影响的技术效果。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例所涉及的一种实施环境的示意图;图2是本专利技术一个实施例提供的应用程序测试方法的流程图;图3是本专利技术另一实施例提供的应用程序测试方法的流程图;图4是本专利技术另一实施例所涉及的一种时段分布的示意图;图5是本专利技术另一实施例所涉及的一种检测过程的流程图;图6是本专利技术一个实施例提供的应用程序测试装置的框图;图7是本专利技术另一实施例提供的应用程序测试装置的框图;图8是本专利技术一个实施例提供的终端的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。请参考图1,其示出了本专利技术实施例所涉及的一种实施环境的示意图。该实施环境可以包括至少一个终端120和测试平台140。其中:终端120中运行有测试应用程序和被测应用程序,测试应用程序用于对被测应用程序进行错误检测。在本专利技术实施例中,测试应用程序主要对被测应用程序进行Crash类型的错误检测和/或ANR(ApplicationNotResponding,应用程序无响应)类型的错误检测。测试应用程序和被测应用程序之间互相独立。也即,测试应用程序并未集成于被测应用程序中。测试应用程序可以是一个独立的插件或者一个独立的应用程序。终端120可以是手机、平板电脑、电子书阅读器、多媒体播放器、膝上型便携计算机、台式计算机、可穿戴智能设备、智能家居设备等等。终端120可通过无线网络或者有线网络与测试平台140相连。测试平台140可以是被测应用程序的开发商提供的测试平台,也可以是用于提供测试外包服务的第三方服务商提供的测试平台。测试平台140中可部署有至少一台用于收集测试结果的数据分析设备。例如,该数据分析设备可以是计算机或者服务器。在终端120与测试平台140之间的网络连接正常的情况下,终端120可将相关的测试结果上报给测试平台140,以便于技术人员对测试结果进行分析和处理,找出错误发生的原因。另外,在一种可能的应用场景中,终端120可以是基于Android(安卓)操作系统的终端。相应地,被测应用程序是Android应用程序。请参考图2,其示出了本专利技术一个实施例提供的应用程序测试方法的流程图。该应用程序测试方法应用于运行有测试应用程序和被测应用程序的设备中。例如,该设备可以是图1所示实施环境中的终端120。测试应用程序和被测应用程序之间互相独立。该应用程序测试方法可以包括如下几个步骤:步骤202,通过测试应用程序获取由设备的操作系统记录的错误记录信息。步骤204,根据错误记录信息检测被测应用程序是否发生目标类型的错误。步骤206,若被测应用程序发生目标类型的错误,则通过测试应用程序获取与目标类型的错误对应的场景信息,该场景信息用于指示发生目标类型的错误时的设备状况和错误情况。综上所述,本实施例提供的应用程序测试方法,通过独立的测试应用程序对被测应用程序进行错误检测;解决了相关技术采用在被测应用程序中集成SDK的方式进行错误检测,所导致的被测应用程序的文件过大以及影响被测应用程序的安全性的问题;既无需在被测应用程序中集成测试应用程序,也无需修改被测应用程序的配置文件,达到了充分避免对被测应用程序产生不利影响的技术效果。请参考图3,其示出了本专利技术另一实施例提供的应用程序测试方法的流程图。该应用程序测试方法应用于运行有测试应用程序和被测应用程序的设备中。例如,该设备可以是图1所示实施环境中的终端120。测试应用程序和被测应用程序之间互相独立。该应用程序测试方法可以包括如下几个步骤:步骤301,通过测试应用程序获取由设备的操作系统记录的错误记录信息。在设备运行的过程中,设备的操作系统会记录系统服务的状态信息和系统日志信息。其中,系统服务的状态信息中包含设备中运行的各个应用程序的运行状态信息。例如,该运行状态信息中包括发生Crash类型的错误的应用程序的进程名以及相应的错误发生时间等信息。系统日志信息中包含用于记录各个应用程序是否发生ANR错误的ANR日志信息。例如,该ANR日志信息中包括发生ANR类型的错误的应用程序的进程名以及相应的错误发生时间等信息。在本实施例中,测试本文档来自技高网...
应用程序测试方法及装置

【技术保护点】
一种应用程序测试方法,其特征在于,应用于运行有测试应用程序和被测应用程序的设备中,所述测试应用程序和所述被测应用程序之间互相独立,所述方法包括:通过所述测试应用程序获取由所述设备的操作系统记录的错误记录信息;根据所述错误记录信息检测所述被测应用程序是否发生目标类型的错误;若所述被测应用程序发生所述目标类型的错误,则通过所述测试应用程序获取与所述目标类型的错误对应的场景信息,所述场景信息用于指示发生所述目标类型的错误时的设备状况和错误情况。

【技术特征摘要】
1.一种应用程序测试方法,其特征在于,应用于运行有测试应用程序和被测应用程序的设备中,所述测试应用程序和所述被测应用程序之间互相独立,所述方法包括:通过所述测试应用程序获取由所述设备的操作系统记录的错误记录信息;根据所述错误记录信息检测所述被测应用程序是否发生目标类型的错误;若所述被测应用程序发生所述目标类型的错误,则通过所述测试应用程序获取与所述目标类型的错误对应的场景信息,所述场景信息用于指示发生所述目标类型的错误时的设备状况和错误情况。2.根据权利要求1所述的方法,其特征在于,当所述错误记录信息包括系统服务的状态信息时,所述目标类型的错误包括崩溃Crash类型的错误;和/或,当所述错误记录信息包括系统日志信息时,所述目标类型的错误包括应用程序无响应ANR类型的错误。3.根据权利要求1或2所述的方法,其特征在于,对所述被测应用程序进行检测的过程包括依次进行的n轮检测流程,每一轮检测流程包括:睡眠时段以及位于所述睡眠时段之后的检测时段,n为正整数;所述根据所述错误记录信息检测所述被测应用程序是否发生目标类型的错误,包括:在当前一轮的检测流程的检测时段内,根据所述错误记录信息检测所述被测应用程序在检测时间窗口内是否发生所述目标类型的错误;其中,在所述当前一轮检测流程为第1轮检测流程时,所述检测时间窗口包括所述第1轮检测流程的睡眠时段;在所述当前一轮检测流程为第i轮检测流程时,所述检测时间窗口包括第i-1轮检测流程的检测时段和所述第i轮检测流程的睡眠时段,i≥2。4.根据权利要求3所述的方法,其特征在于,所述错误记录信息包括所述系统服务的状态信息;所述在当前一轮的检测流程的检测时段内,根据所述错误记录信息检测所述被测应用程序在检测时间窗口内是否发生所述目标类型的错误,包括:在所述当前一轮检测流程的检测时段内,从所述系统服务的状态信息中解析获取发生所述目标类型的错误的应用程序的标识以及错误发生时间;检测所述被测应用程序是否符合预定条件;其中,所述预定条件是指所述发生所述目标类型的错误的应用程序的标识中包含所述被测应用程序的标识,且所述错误发生时间在所述检测时间窗口内;若所述被测应用程序符合所述预定条件,则确定所述被测应用程序在所述检测时间窗口内发生所述目标类型的错误。5.根据权利要求3所述的方法,其特征在于,所述错误记录信息包括所述系统日志信息;所述在当前一轮的检测流程的检测时段内,根据所述错误记录信息检测所述被测应用程序在检测时间窗口内是否发生所述目标类型的错误,包括:在所述当前一轮检测流程的检测时段内,获取所述系统日志信息对应的创建时间;检测所述创建时间是否在所述检测时间窗口内;若所述创建时间在所述检测时间窗口内,则从所述系统日志信息中解析获取发生所述目标类型的错误的应用程序的标识;检测所述发生所述目标类型的错误的应用程序的标识中是否包含所述被测应用程序的标识;若所述发生所述目标类型的错误的应用程序的标识中包含所述被测应用程序的标识,则确定所述被测应用程序在所述检测时间窗口内发生所述目标类型的错误。6.根据权利要求1或2所述的方法,其特征在于,所述通过所述测试应用程序获取与所述目标类型的错误对应的场景信息之后,还包括:判断当前网络状况是否满足数据上报条件;若所述当前网络状况满足所述数据上报条件,则向数据分析设备自动发送所述场景信息;若所述当前网络状况不满足所述数据上报条件,则将所述场景信息保存至本地。7.一种应用程序测试装置,其特征在于,应用于运行有测试...

【专利技术属性】
技术研发人员:符阳辉王寸涛
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1