CN104536863B - 一种应用程序的测试方法及装置 - Google Patents

一种应用程序的测试方法及装置 Download PDF

Info

Publication number
CN104536863B
CN104536863B CN201410745869.9A CN201410745869A CN104536863B CN 104536863 B CN104536863 B CN 104536863B CN 201410745869 A CN201410745869 A CN 201410745869A CN 104536863 B CN104536863 B CN 104536863B
Authority
CN
China
Prior art keywords
test
performance
test operation
application program
operation content
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.)
Expired - Fee Related
Application number
CN201410745869.9A
Other languages
English (en)
Other versions
CN104536863A (zh
Inventor
杜文成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201410745869.9A priority Critical patent/CN104536863B/zh
Publication of CN104536863A publication Critical patent/CN104536863A/zh
Application granted granted Critical
Publication of CN104536863B publication Critical patent/CN104536863B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供一种应用程序的测试方法及装置,该方法包括:当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作;获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容;当分析所述性能数据得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容;根据所述性能缺陷的测试操作内容生成测试结果。本发明实施例能够定位性能缺陷的具体操作,同时方便测试人员操作。

Description

一种应用程序的测试方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用程序的测试方法及装置。
背景技术
目前对安卓设备(操作系统为安卓系统的手机、平板电脑、电视等电子设备)的性能测试采用手动测试或自动化测试。手动测试需要测试人员手动控制执行测试脚本,执行繁琐并且无法实时监控日志。自动化测试为在计算机上安装一个控制端(测试工具),在设备安装的一个客户端,通过串口、USB或者无线方式将计算机与设备相连,然后应用测试工具向设备发送请求或者命令,设备收到命令或者请求后,交给客户端解析,然后客户端将这些解析的命令下发给设备的各个功能模块所能识别的命令,调用模块模拟操作,完成操作后,设备会返回信息,客户端可以抓取这些信息,然后传回给计算机。
现有的自动化测试只能通过测试监控性能数据得到设备存在性能缺陷(内存泄露,CPU占用过高,耗电量大等情况)的结论,但是无法根据性能数据定位性能缺陷的具体操作。
发明内容
本发明实施例提供一种应用程序的测试方法及装置,能够定位性能缺陷的具体操作,同时方便测试人员操作。
本发明实施例第一方面提供一种应用程序的测试方法,包括:
当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作;
获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容;
当分析所述性能数据得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容;
根据所述性能缺陷的测试操作内容生成测试结果。
本发明实施例第二方面提供一种应用程序的测试装置,包括:
接收执行模块,用于当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作;
获取模块,用于获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容;
分析模块,用于当分析所述性能数据得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容;
生成模块,用于根据所述性能缺陷的测试操作内容生成测试结果。
本发明实施例通过测试被测应用程序的测试操作和所述被测应用程序的性能,获取属性信息和性能数据,当分析得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容和测试结果,能够准确定位性能缺陷的具体操作,同时方便测试人员操作。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种应用程序的测试方法的流程示意图;
图2为本发明实施例提供的另一种应用程序的测试方法的流程示意图;
图3为本发明实施例提供的一种应用程序的测试方法的操作示意图;
图4为本发明实施例提供的一种应用程序的测试装置的结构示意图;
图5为图4所示的获取模块的实施例的结构示意图;
图6为图4所示的分析模块的实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中应用程序运行于移动终端之上,所述移动终端可以包括但不限于:手机、PAD(平板电脑)、智能可穿戴设备等等。所述移动终端的操作系统可以包括但不限于:Android系统、塞班系统、Windows系统、IOS(苹果公司开发的移动操作系统)系统等等。
下面将结合附图1-附图3,对本发明实施例提供的应用程序的测试方法进行详细介绍。
请参见图1,为本发明实施例提供的一种应用程序的测试方法的流程示意图;该方法可包括以下步骤S101-步骤S104。
S101,当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作。
具体的,在接收测试被测应用程序的指令之前,需要检测移动终端与计算机是否处于正常连接状态,所述移动终端是否已安装测试软件,当所述移动终端与所述计算机处于正常连接状态并且所述移动终端和所述计算机均已安装测试软件时,可接收测试所述被测应用程序的指令。所述被测应用程序运行于所述移动终端,当接收到所述测试指令时,测试人员可选择测试模式并执行测试所述被测应用程序的测试操作,即所述测试人员在所述移动终端上对所述被测应用程序进行一系列的操作,例如点击所述被测应用程序的某个功能键,上下左右滑动所述被测应用程序的界面、单击或者双击主菜单键等等。为了使得到的测试结果真实的反映所述被测应用程序的性能,在测试之前需要关闭其他的应用程序。
S102,获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容。
具体的,检测所述测试人员在所述被测应用程序的上进行的一系列测试操作,并记录所述测试操作得到属性信息,所述属性信息包括测试操作时间和测试操作内容,其中所述测试操作内容包括测试操作的动作和测试模式,所述测试模式可以为遍历测试、随机测试、执行脚本测试中的一种。在遍历测试模式下进行的测试为记录所有测试操作的动作,在随机测试模式下的测试为记录从所有测试操作的动作中随机选择的测试操作的动作,在执行脚本测试模式下的测试为记录指定的某一次测试操作的动作。例如,所述属性信息中的一条记录为2014.11.12.15:30:00 Click XX button,遍历模式。
在获取所述测试操作的属性信息的同时获取所述被测应用程序的性能数据,所述性能数据通过检测所述被测应用程序在测试过程中的性能参数获得,其中所述性能参数可以包括内存占用量、CPU使用率、耗电量等反映移动终端性能的参数。所述性能数据包括所述性能参数的测试时间和测试值,例如所测性能参数为内存占用量,将会得到各测试时间点以及其所对应的测试值,可以图或表的形式展现,方便测试人员直观的获取所述性能参数。所述性能参数可以在获取所述被测应用程序的性能数据之前从反映移动终端性能的参数中选择一种或多种,也可以由系统随机选择。
S103,当分析所述性能数据得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容。
具体的,所述性能数据反映各测试时间点与其测试值之间的对应关系,分析所述性能数据可以判断所述被测应用程序是否存在性能缺陷。将所述性能数据与预设的性能参数范围进行对比,所述预设的性能参数范围为所述移动终端正常工作时性能参数的范围,如果测试值不属于这个范围,那么所述性能数据就可能未异常数据。检测所述性能数据中是否存在超出所述预设的性能参数范围的性能数据,所述超出包括大于或者低于所述预设的性能参数范围,若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。
当分析得出所述被测应用程序存在性能缺陷时,可以根据所述属性信息获取所述性能缺陷的测试操作内容。将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并通过所述性能数据的展现形式确定出所述性能缺陷数据的测试时间区域。例如,所述性能数据以图的形式展现,图中出现了超出所述预设的性能参数范围的波形,确定出该段波形发生的测试时间区域。从所述属性信息中获取所述测试时间区域对应的测试操作内容,将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容。例如,获取的测试时间区域为2014.11.12.15:30:00——2014.11.12.15:32:00,从所述属性信息中查找到该测试时间区域内的测试操作内容有1条,2014.11.12.15:31:29 Click home button,随机测试,该项可能为导致所述被测应用程序出现性能缺陷的操作,将这项测试操作内容作为所述性能缺陷的测试操作内容。
S104,根据所述性能缺陷的测试操作内容生成测试结果。
具体的,所述测试结果包括所述被测应用程序存在性能缺陷以及所述性能缺陷的测试操作内容。在所述根据所述性能缺陷的测试操作内容生成测试结果的步骤之前可以验证所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容:根据所述测试时间区域对应的测试操作内容生成缺陷操作脚本;重复多次执行所述缺陷操作脚本并获取所述缺陷操作脚本的性能数据;若多次得到的所述缺陷操作脚本的性能数据均超出所述预设的性能参数范围,则可以确定所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容;若所述缺陷操作脚本的性能数据属于所述预设的性能参数范围,则扩大所述测试时间区域查找所述性能缺陷的测试操作内容。
所述测试结果还可以包括根据所述测试时间区域对应的测试操作内容生成的缺陷操作脚本。测试人员可以将所述测试结果反馈给研发人员,以便研发人员针对性的改进。
本发明实施例通过测试被测应用程序的测试操作和所述被测应用程序的性能,获取属性信息和性能数据,当分析得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容和测试结果,能够准确定位性能缺陷的具体操作,方便测试人员操作,同时也方便研发人员针对性地改进。
请参见图2,为本发明实施例提供的另一种应用程序的测试方法的流程示意图;该方法可包括以下步骤S201-步骤S206。
S201,当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作。
具体的,在接收测试被测应用程序的指令之前,需要检测移动终端与计算机是否处于正常连接状态,所述移动终端是否已安装测试软件,当所述移动终端与所述计算机处于正常连接状态并且所述移动终端和所述计算机均已安装测试软件时,可接收测试所述被测应用程序的指令。所述被测应用程序运行于所述移动终端,当接收到所述测试指令时,测试人员可选择测试模式并执行测试所述被测应用程序的测试操作,即所述测试人员在所述移动终端上对所述被测应用程序进行一系列的操作,例如点击所述被测应用程序的某个功能键,上下左右滑动所述被测应用程序的界面、单击或者双击主菜单键等等。为了使得到的测试结果真实的反映所述被测应用程序的性能,在测试之前需要关闭其他的应用程序。
S202,检测执行测试过程中的测试操作,记录所述测试操作得到属性信息。
具体的,检测所述测试人员在所述被测应用程序的上进行的一系列测试操作,并记录所述测试操作得到属性信息,所述属性信息包括测试操作时间和测试操作内容,其中所述测试操作内容包括测试操作的动作和测试模式,所述测试模式可以为遍历测试、随机测试、执行脚本测试中的一种。在遍历测试模式下进行的测试为记录所有测试操作的动作,在随机测试模式下的测试为记录从所有测试操作的动作中随机选择的测试操作的动作,在执行脚本测试模式下的测试为记录指定的某一次测试操作的动作。例如,所述属性信息中的一条记录为2014.11.12.15:30:00 Click XX button,遍历模式。
S203,检测所述被测应用程序的性能参数,记录所述性能参数的性能数据。
具体的,在获取所述测试操作的属性信息的同时获取所述被测应用程序的性能数据,所述性能数据通过检测所述被测应用程序在测试过程中的性能参数获得,其中所述性能参数可以包括内存占用量、CPU使用率、耗电量等反映移动终端性能的参数。所述性能数据包括所述性能参数的测试时间和测试值,例如所测性能参数为内存占用量,将会得到各测试时间点以及其所对应的测试值,可以图或表的形式展现,方便测试人员直观的获取所述性能参数。所述性能参数可以在获取所述被测应用程序的性能数据之前从反映移动终端性能的参数中选择一种或多种,也可以由系统随机选择。
S204,将所述性能数据与预设的性能参数范围进行对比,若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。
具体的,所述性能数据反映各测试时间点与其测试值之间的对应关系,分析所述性能数据可以判断所述被测应用程序是否存在性能缺陷。将所述性能数据与预设的性能参数范围进行对比,所述预设的性能参数范围为所述移动终端正常工作时性能参数的范围,如果测试值不属于这个范围,那么所述性能数据就可能未异常数据。检测所述性能数据中是否存在超出所述预设的性能参数范围的性能数据,所述超出包括大于或者低于所述预设的性能参数范围,若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。
S205,根据所述属性信息获取所述性能缺陷的测试操作内容。
具体的,当分析得出所述被测应用程序存在性能缺陷时,可以根据所述属性信息获取所述性能缺陷的测试操作内容。将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并通过所述性能数据的展现形式确定出所述性能缺陷数据的测试时间区域。例如,所述性能数据以图的形式展现,图中出现了超出所述预设的性能参数范围的波形,确定出该段波形发生的测试时间区域。从所述属性信息中获取所述测试时间区域对应的测试操作内容,将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容。例如,获取的测试时间区域为2014.11.12.15:30:00——2014.11.12.15:32:00,从所述属性信息中查找到该测试时间区域内的测试操作内容有1条,2014.11.12.15:31:29 Click home button,随机测试,该项可能为导致所述被测应用程序出现性能缺陷的操作,将这项测试操作内容作为所述性能缺陷的测试操作内容。
S206,根据所述性能缺陷的测试操作内容生成测试结果。
具体的,所述测试结果包括所述被测应用程序存在性能缺陷以及所述性能缺陷的测试操作内容。在所述根据所述性能缺陷的测试操作内容生成测试结果的步骤之前可以验证所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容:根据所述测试时间区域对应的测试操作内容生成缺陷操作脚本;重复多次执行所述缺陷操作脚本并获取所述缺陷操作脚本的性能数据;若多次得到的所述缺陷操作脚本的性能数据均超出所述预设的性能参数范围,则可以确定所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容;若所述缺陷操作脚本的性能数据属于所述预设的性能参数范围,则扩大所述测试时间区域查找所述性能缺陷的测试操作内容。
所述测试结果还可以包括根据所述测试时间区域对应的测试操作内容生成的缺陷操作脚本。测试人员可以将所述测试结果反馈给研发人员,以便研发人员针对性地改进。
本发明实施例通过检测执行过程中的测试操作和所述被测应用程序的性能参数获取属性信息和性能数据,结合两者分析得出所述被测应用程序存在性能缺陷并获取所述性能缺陷的测试操作内容得到测试结果,能够在得出存在性能缺陷的同时定位出性能缺陷的具体操作,方便研发人员针对性地改进。
请参见图3,为本发明实施例提供的一种应用程序的测试方法的操作示意图;该方法包括以下步骤S301-步骤S308。
S301,移动终端安装测试软件,开始测试。
在所述移动终端与计算机连接正常的情况下,确认所述移动终端与所述计算机均已安装测试软件便可开始测试。
S302,选择测试模式和被测应用程序并操作所述被测应用程序。
为了使测试结果能够真实的反映所述被测应用程序的性能,在选择测试模式之前关闭其他应用程序。所述测试模式包括遍历测试、随机测试、执行脚本测试。测试人员可选择测试模式并执行测试所述被测应用程序的测试操作,即所述测试人员在所述移动终端上对所述被测应用程序进行一系列的操作,例如点击所述被测应用程序的某个功能键,上下左右滑动所述被测应用程序的界面、单击或者双击主菜单键等等。
S303,记录操作的时间、内容和所述被测应用程序的性能参数。
记录测试操作的时间、内容得到属性信息,例如,所述属性信息中的一条记录为2014.11.12.15:30:00 Click XX button,遍历模式。所述性能数据通过检测所述被测应用程序在测试过程中的性能参数获得,其中所述性能参数可以包括内存占用量、CPU使用率、耗电量等反映移动终端性能的参数。所述性能数据包括所述性能参数的测试时间和测试值,例如所测性能参数为内存占用量,将会得到各测试时间点以及其所对应的测试值,可以图或表的形式展现,方便测试人员直观的获取所述性能参数。所述性能参数可以在获取所述被测应用程序的性能数据之前从反映移动终端性能的参数中选择一种或多种,也可以由系统随机选择。
S304,分析数据并判断是否存在性能缺陷。
分析所述属性信息和所述性能数据来判断是否存在性能缺陷。将所述性能数据与预设的性能参数范围进行对比,所述预设的性能参数范围为所述移动终端正常工作时性能参数的范围,如果测试值不属于这个范围,那么所述性能数据就可能未异常数据。检测所述性能数据中是否存在超出所述预设的性能参数范围的性能数据,所述超出包括大于或者低于所述预设的性能参数范围,若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。若检测到所述性能数据均属于所述预设的性能参数范围,则得出所述被测应用程序工作正常,其测试结果为正常。
S305,查找导致性能缺陷的时间区域的对应的操作。
当分析得出所述被测应用程序存在性能缺陷时,将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并通过所述性能数据的展现形式确定出所述性能缺陷数据的测试时间区域。从所述属性信息中获取所述测试时间区域对应的测试操作内容,将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容。
S306,生成并执行性能缺陷脚本验证是否为缺陷操作。
根据所述测试时间区域对应的测试操作内容生成缺陷操作脚本,重复多次执行所述缺陷操作脚本并获取所述缺陷操作脚本的性能数据。若多次得到的所述缺陷操作脚本的性能数据均超出所述预设的性能参数范围,则可以确定所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容;若所述缺陷操作脚本的性能数据属于所述预设的性能参数范围,则需要继续查找所述性能缺陷的测试操作内容。
S307,扩大时间区域继续测试查找缺陷操作。
当所述缺陷操作脚本的性能数据属于所述预设的性能参数范围时,通过扩大测试时间区域来继续查找所述性能缺陷的测试操作内容。
S308,测试结果。
若检测到所述性能数据均属于所述预设的性能参数范围,则得出所述被测应用程序工作正常,其测试结果为正常。
若检测到存在所述性能缺陷,则所述测试结果包括所述被测应用程序存在性能缺陷、所述性能缺陷的测试操作内容和根据所述测试时间区域对应的测试操作内容生成的缺陷操作脚本。
本发明实施例能够方便测试人员的操作,准确定位出性能缺陷的具体操作,将所述测试结果反馈给研发人员,可以方便研发人员针对性地解决问题。
下面将结合附图4-附图6,对本发明实施例提供的一种应用程序的测试装置进行详细介绍。需要说明的是,所述测试装置由计算机和移动终端组成。
请参见图4,为本发明实施例提供的一种应用程序的测试装置的结构示意图;该装置可包括:接收执行模块101、获取模块102、分析模块103、生成模块104。
接收执行模块101,用于当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作。
具体的,在接收测试被测应用程序的指令之前,需要检测移动终端与计算机是否处于正常连接状态,所述移动终端是否已安装测试软件,当所述移动终端与所述计算机处于正常连接状态并且所述移动终端和所述计算机均已安装测试软件时,可接收测试所述被测应用程序的指令。所述被测应用程序运行于所述移动终端,当接收到所述测试指令时,测试人员可选择测试模式并执行测试所述被测应用程序的测试操作,即所述测试人员在所述移动终端上对所述被测应用程序进行一系列的操作,例如点击所述被测应用程序的某个功能键,上下左右滑动所述被测应用程序的界面、单击或者双击主菜单键等等。
获取模块102,用于获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容。
具体的,检测所述测试人员在所述被测应用程序的上进行的一系列测试操作,并记录所述测试操作得到属性信息,所述属性信息包括测试操作时间和测试操作内容,其中所述测试操作内容包括测试操作的动作和测试模式,所述测试模式可以为遍历测试、随机测试、执行脚本测试中的一种。在遍历测试模式下进行的测试为记录所有测试操作的动作,在随机测试模式下的测试为记录从所有测试操作的动作中随机选择的测试操作的动作,在执行脚本测试模式下的测试为记录指定的某一次测试操作的动作。例如,所述属性信息中的一条记录为2014.11.12.15:30:00 Click XX button,遍历模式。
在获取所述测试操作的属性信息的同时获取所述被测应用程序的性能数据,所述性能数据通过检测所述被测应用程序在测试过程中的性能参数获得,其中所述性能参数可以包括内存占用量、CPU使用率、耗电量等反映移动终端性能的参数。所述性能数据包括所述性能参数的测试时间和测试值,例如所测性能参数为内存占用量,将会得到各测试时间点以及其所对应的测试值,可以图或表的形式展现,方便测试人员直观的获取所述性能参数。所述性能参数可以在获取所述被测应用程序的性能数据之前从反映移动终端性能的参数中选择一种或多种,也可以由系统随机选择。
分析模块103,用于当分析所述性能数据得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容。
所述性能数据反映各测试时间点与其测试值之间的对应关系,分析所述性能数据可以判断所述被测应用程序是否存在性能缺陷。将所述性能数据与预设的性能参数范围进行对比,所述预设的性能参数范围为所述移动终端正常工作时性能参数的范围,如果测试值不属于这个范围,那么所述性能数据就可能未异常数据。检测所述性能数据中是否存在超出所述预设的性能参数范围的性能数据,所述超出包括大于或者低于所述预设的性能参数范围,若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。
当分析得出所述被测应用程序存在性能缺陷时,可以根据所述属性信息获取所述性能缺陷的测试操作内容。将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并通过所述性能数据的展现形式确定出所述性能缺陷数据的测试时间区域。例如,所述性能数据以图的形式展现,图中出现了超出所述预设的性能参数范围的波形,确定出该段波形发生的测试时间区域。从所述属性信息中获取所述测试时间区域对应的测试操作内容,将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容。例如,获取的测试时间区域为2014.11.12.15:30:00——2014.11.12.15:32:00,从所述属性信息中查找到该测试时间区域内的测试操作内容有1条,2014.11.12.15:31:29 Click home button,随机测试,该项可能为导致所述被测应用程序出现性能缺陷的操作,将这项测试操作内容作为所述性能缺陷的测试操作内容。
生成模块104,用于根据所述性能缺陷的测试操作内容生成测试结果。
具体的,所述测试结果包括所述被测应用程序存在性能缺陷以及所述性能缺陷的测试操作内容。在所述根据所述性能缺陷的测试操作内容生成测试结果的步骤之前可以验证所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容:根据所述测试时间区域对应的测试操作内容生成缺陷操作脚本;重复多次执行所述缺陷操作脚本并获取所述缺陷操作脚本的性能数据;若多次得到的所述缺陷操作脚本的性能数据均超出所述预设的性能参数范围,则可以确定所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容;若所述缺陷操作脚本的性能数据属于所述预设的性能参数范围,则扩大所述测试时间区域查找所述性能缺陷的测试操作内容。
所述测试结果还可以包括根据所述测试时间区域对应的测试操作内容生成的缺陷操作脚本。测试人员可以将所述测试结果反馈给研发人员,以便研发人员针对性地改进。
本发明实施例通过测试被测应用程序的测试操作和所述被测应用程序的性能,获取属性信息和性能数据,当分析得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容和测试结果,能够准确定位性能缺陷的具体操作,方便测试人员操作,同时也方便研发人员针对性地改进。
请参见图5,为图4所示的获取模块的实施例的结构示意图;该获取模块102可包括:第一检测单元1201和第二检测单元1202。
第一检测单元1201,用于检测执行测试过程中的测试操作,记录所述测试操作得到属性信息。
检测所述测试人员在所述被测应用程序的上进行的一系列测试操作,并记录所述测试操作得到属性信息,所述属性信息包括测试操作时间和测试操作内容,其中所述测试操作内容包括测试操作的动作和测试模式,所述测试模式可以为遍历测试、随机测试、执行脚本测试中的一种。在遍历测试模式下进行的测试为记录所有测试操作的动作,在随机测试模式下的测试为记录从所有测试操作的动作中随机选择的测试操作的动作,在执行脚本测试模式下的测试为记录指定的某一次测试操作的动作。例如,所述属性信息中的一条记录为2014.11.12.15:30:00 Click XX button,遍历模式。
第二检测单元1202,用于检测所述被测应用程序的性能参数,记录所述性能参数的性能数据,所述性能数据包括所述性能参数的测试时间和测试值。
在所述第一检测单元1201获取所述测试操作的属性信息的同时获取所述被测应用程序的性能数据,所述性能数据通过检测所述被测应用程序在测试过程中的性能参数获得,其中所述性能参数可以包括内存占用量、CPU使用率、耗电量等反映移动终端性能的参数。所述性能数据包括所述性能参数的测试时间和测试值,例如所测性能参数为内存占用量,将会得到各测试时间点以及其所对应的测试值,可以图或表的形式展现,方便测试人员直观的获取所述性能参数。所述性能参数可以在获取所述被测应用程序的性能数据之前从反映移动终端性能的参数中选择一种或多种,也可以由系统随机选择。
本发明实施例通过测试被测应用程序的测试操作和所述被测应用程序的性能,获取属性信息和性能数据,当分析得出所述被测应用程序存在性能缺陷时,获取所述性能缺陷的测试操作内容和测试结果,能够准确定位性能缺陷的具体操作,方便测试人员操作,同时也方便研发人员针对性地改进。
请参见图6,为图4所示的分析模块的实施例的结构示意图;该分析模块103可包括:对比单元1301、检测缺陷单元1302和获取单元1303。
对比单元1301,用于将所述性能数据与预设的性能参数范围进行对比。
所述性能数据反映各测试时间点与其测试值之间的对应关系,分析所述性能数据可以判断所述被测应用程序是否存在性能缺陷。将所述性能数据与预设的性能参数范围进行对比,所述预设的性能参数范围为所述移动终端正常工作时性能参数的范围,如果测试值不属于这个范围,那么所述性能数据就可能未异常数据。检测所述性能数据中是否存在超出所述预设的性能参数范围的性能数据,所述超出包括大于或者低于所述预设的性能参数范围,若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。
检测缺陷单元1302,用于若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷。
获取单元1303,用于根据所述属性信息获取所述性能缺陷的测试操作内容,所述获取单元1303可包括确定数据子单元1313和获取内容子单元1323。
确定数据子单元1313,用于将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并确定所述性能缺陷数据的测试时间区域。
将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并通过所述性能数据的展现形式确定出所述性能缺陷数据的测试时间区域。例如,所述性能数据以图的形式展现,图中出现了超出所述预设的性能参数范围的波形,确定出该段波形发生的测试时间区域。
获取内容子单元1323,用于从所述属性信息中获取所述测试时间区域对应的测试操作内容,将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容。
从所述属性信息中获取所述测试时间区域对应的测试操作内容,将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容。例如,获取的测试时间区域为2014.11.12.15:30:00——2014.11.12.15:32:00,从所述属性信息中查找到该测试时间区域内的测试操作内容有1条,2014.11.12.15:31:29Click home button,随机测试,该项可能为导致所述被测应用程序出现性能缺陷的操作,将这项测试操作内容作为所述性能缺陷的测试操作内容。
本发明实施例能够准确定位性能缺陷的具体操作,方便测试人员操作。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (6)

1.一种应用程序的测试方法,其特征在于,包括:
当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作;
获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容;
将所述性能数据与预设的性能参数范围进行对比;若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷;将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并确定所述性能缺陷数据的测试时间区域;从所述属性信息中获取所述测试时间区域对应的测试操作内容;将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容;
根据所述性能缺陷的测试操作内容生成测试结果。
2.根据权利要求1所述的方法,其特征在于,所述获取所述测试操作的属性信息和所述被测应用程序的性能数据,包括:
检测执行测试过程中的测试操作,记录所述测试操作得到属性信息;
检测所述被测应用程序的性能参数,记录所述性能参数的性能数据,所述性能数据包括所述性能参数的测试时间和测试值。
3.根据权利要求1所述的方法,其特征在于,在所述根据所述性能缺陷的测试操作内容生成测试结果的步骤之前,还包括:
根据所述测试时间区域对应的测试操作内容生成缺陷操作脚本;
执行所述缺陷操作脚本验证所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容。
4.一种应用程序的测试装置,其特征在于,包括:
接收执行模块,用于当接收到测试被测应用程序的指令时,执行测试所述被测应用程序的测试操作;
获取模块,用于获取所述测试操作的属性信息和所述被测应用程序的性能数据,所述属性信息包括测试操作时间和测试操作内容;
分析模块,用于将所述性能数据与预设的性能参数范围进行对比;若检测到所述性能数据中存在超出所述预设的性能参数范围的性能数据,则得出所述被测应用程序存在性能缺陷;将所述性能数据中存在超出所述预设的性能参数范围的性能数据作为性能缺陷数据,并确定所述性能缺陷数据的测试时间区域;从所述属性信息中获取所述测试时间区域对应的测试操作内容;将所述测试时间区域对应的测试操作内容作为所述性能缺陷的测试操作内容;
生成模块,用于根据所述性能缺陷的测试操作内容生成测试结果。
5.根据权利要求4所述的装置,其特征在于,所述获取模块包括:
第一检测单元,用于检测执行测试过程中的测试操作,记录所述测试操作得到属性信息;
第二检测单元,用于检测所述被测应用程序的性能参数,记录所述性能参数的性能数据,所述性能数据包括所述性能参数的测试时间和测试值。
6.根据权利要求4所述的装置,其特征在于,还包括:
生成脚本单元,用于在所述生成模块根据所述性能缺陷的测试操作内容生成测试结果之前,根据所述测试时间区域对应的测试操作内容生成缺陷操作脚本;
验证单元,用于执行所述缺陷操作脚本验证所述测试时间区域对应的测试操作内容为所述性能缺陷的测试操作内容。
CN201410745869.9A 2014-12-08 2014-12-08 一种应用程序的测试方法及装置 Expired - Fee Related CN104536863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410745869.9A CN104536863B (zh) 2014-12-08 2014-12-08 一种应用程序的测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410745869.9A CN104536863B (zh) 2014-12-08 2014-12-08 一种应用程序的测试方法及装置

Publications (2)

Publication Number Publication Date
CN104536863A CN104536863A (zh) 2015-04-22
CN104536863B true CN104536863B (zh) 2016-10-05

Family

ID=52852393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410745869.9A Expired - Fee Related CN104536863B (zh) 2014-12-08 2014-12-08 一种应用程序的测试方法及装置

Country Status (1)

Country Link
CN (1) CN104536863B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389257B (zh) * 2015-11-11 2017-12-12 中国建设银行股份有限公司 一种系统参数处理方法、装置及系统
CN105550101A (zh) * 2015-12-02 2016-05-04 北京奇虎科技有限公司 一种用于应用程序的测试方法、电子设备及系统
CN106294131A (zh) * 2016-07-26 2017-01-04 南京航空航天大学 一种蕴含相关性特征面向系统测试用的仿真流式大数据生成方法
CN106657514B (zh) * 2016-11-16 2020-10-16 华勤技术有限公司 一种终端测试方法及测试装置
CN108132940B (zh) * 2016-12-01 2020-10-02 北京金山云网络技术有限公司 一种应用程序数据提取方法及装置
CN108156456A (zh) * 2017-12-25 2018-06-12 深圳创维-Rgb电子有限公司 一种电视性能测试方法、装置以及存储介质
CN108595332B (zh) * 2018-04-25 2022-01-11 北京车和家信息技术有限公司 软件测试方法及装置
CN109359023B (zh) * 2018-04-27 2020-01-24 哈尔滨工程大学 基于提交信息的移动应用错误定位方法
CN109062810B (zh) * 2018-09-26 2022-05-06 北京城市网邻信息技术有限公司 一种应用程序的测试方法、装置、电子设备及存储介质
CN112448860B (zh) * 2019-08-30 2023-04-07 北京奇艺世纪科技有限公司 一种应用程序的测试方法及相关设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103838663A (zh) * 2012-11-20 2014-06-04 腾讯科技(深圳)有限公司 一种应用程序的测试方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010027387A1 (en) * 2000-03-30 2001-10-04 Hideaki Miyake Debugging supporting apparatus, debugging supporting method and recording medium readable by computer with its programs recorded thereon
CN103425574B (zh) * 2012-05-25 2018-02-23 腾讯科技(深圳)有限公司 一种测试应用程序的方法及装置
CN103544100B (zh) * 2012-07-12 2018-02-16 腾讯科技(深圳)有限公司 便携数据处理设备应用程序的测试方法、系统和客户端
CN103729258B (zh) * 2012-10-12 2018-09-04 腾讯科技(深圳)有限公司 一种自动测试方法、终端及系统
KR20140088963A (ko) * 2012-12-31 2014-07-14 부산가톨릭대학교 산학협력단 애플리케이션 개발을 위한 런타임 에러 테스팅 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103838663A (zh) * 2012-11-20 2014-06-04 腾讯科技(深圳)有限公司 一种应用程序的测试方法及装置

Also Published As

Publication number Publication date
CN104536863A (zh) 2015-04-22

Similar Documents

Publication Publication Date Title
CN104536863B (zh) 一种应用程序的测试方法及装置
WO2017000424A1 (zh) 协议检测方法及装置
CN104461846B (zh) 检测应用程序耗电量的方法和装置
CN109960642B (zh) 自动测试方法和装置
CN103179608B (zh) 2/3g无线模块诊断测试方法及装置
CN106604362B (zh) 一种无线保真Wi-Fi扫描方法及移动终端
CN107766209B (zh) 中控自动化测试方法、装置、设备及计算机可读存储介质
CN105187608B (zh) 一种获取移动终端上应用程序耗电量的方法和装置
CN108647148A (zh) 移动端应用程序的测试方法、装置、设备及存储介质
CN103377105A (zh) 一种串行总线测试方法
CN103308846A (zh) 一种基于模型识别的集成芯片功能性能检测方法和装置
CN112526319B (zh) 芯片测试方法、装置、处理器芯片及服务器
CN103995202B (zh) 一种自动信号测试方法、装置及系统
CN106771453B (zh) 一种用于示波器的测试方法及装置
CN104793118A (zh) 设定测试针压的方法
CN111879456B (zh) 一种建筑幕墙安全性检测方法及系统
CN107153601B (zh) 单元性能测试方法及设备
CN105653455A (zh) 一种程序漏洞的检测方法及检测系统
CN109901962B (zh) 一种Linux下AEP内存的同步混合压力测试方法及系统
CN107907838A (zh) 一种冗余电源模块测试系统及方法
CN107315664A (zh) 显卡自动检测系统及方法
CN110554949A (zh) 一种跨平台的进程数据收集分析工具、方法及使用方法
CN109375606A (zh) 一种算法库测试方法
CN114638096A (zh) 一种程序变量间的逻辑展示方法、装置、设备及存储介质
CN109522217A (zh) 应用程序的内存测试方法及终端设备

Legal Events

Date Code Title Description
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

CP01 Change in the name or title of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161005

CF01 Termination of patent right due to non-payment of annual fee