安卓设备中的软件性能测试方法和装置制造方法
【专利摘要】本申请提供一种安卓设备中的软件性能测试方法以及测试装置,以解决传统的软件性能测试方法和测试装置手动执行繁琐以及无法实时查看性能指标数据的技术问题。所述方法包括以下步骤:接收被测软件的属性信息,所述被测软件运行于所述安卓设备;确认所述被测软件待监控的性能指标;运行所述被测软件;调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件;实时显示监控所述被测软件期间的所述性能指标的数据。本申请提供的软件性能测试方法通过自动实时监控所述被测软件,方便测试或调试,且大幅度节省测试时间。
【专利说明】安卓设备中的软件性能测试方法和装置
【技术领域】
[0001]本申请涉及计算机【技术领域】,尤其涉及一种安卓(Android)设备中的软件性能测试方法和装置。
【背景技术】
[0002]目前无论是开发或者测试使用的安卓设备(操作系统为安卓系统的手机、平板电脑、电视等电子设备)性能测试活动都是通过手动执行脚本来实现。脚本包括两部分,一部分是上传到安卓设备里面的控制某个程序执行的脚本,另一个是实时日志记录脚本。在将控制程序的执行脚本上传到设备里面之后,测试人员手动执行所述执行脚本,然后再打开实时日志记录脚本。在控制程序的执行脚本完成之后再手动中断日志脚本的执行,并对日志脚本生成的日志文件进行手动过滤,最后再生成Excel报表。
[0003]但是,现有技术存在以下缺点:
(I)手动执行繁琐。目前安卓设备性能测试主要包括CPU、内存、电量以及网络流量测试,因此常常需要四个脚本,而且,将四个脚本上传到设备之后,仍需要手动去执行脚本。
[0004](2)日志无法实时监控。在控制程序的执行脚本过程中,开发或测试人员无法实时看到性能数据,每次只能等脚本执行完毕或者手动中断之后才能看到原始数据,实际上无法起到监控的效果,而仅仅相当于日志查询功能。并且,该原始数据没有经过过滤,分析起来不方便。
[0005](3)需要手动去过滤并生成报表。目前的脚本方案中,脚本执行完成之后会在手机安全数码卡(Secure Digital Memory Card,通常简称SD卡)上生成日志文件,并将所有原始数据保存,执行人员仍需手动过滤部分数据才能制作报表。
[0006]
【发明内容】
[0007]本申请的目的在于,解决传统的软件性能测试方法和设备手动执行繁琐以及无法实时查看性能指标数据的技术问题。
[0008]本申请的目的及解决其技术问题是采用以下技术方案来实现的。
[0009]一种安卓设备中的软件性能测试方法,包括以下步骤:接收被测软件的属性信息,所述被测软件运行于所述安卓设备;确认所述被测软件待监控的性能指标;运行所述被测软件;调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件;实时显示监控所述被测软件期间的所述性能指标的数据。
[0010]一种用于测试安卓设备中的软件性能的测试装置,包括:接收模块,用于接收被测软件的属性信息,所述被测软件运行于所述安卓设备;确认模块,用于确认待监控的性能指标;执行模块,用于运行所述被测软件;调用模块,用于调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件;显示模块,用于实时显示监控所述被测软件期间的所述性能指标的数据。[0011]本申请提供的软件性能测试方法和测试装置通过对性能指标进行自动实时监控,并实时显示性能指标数据,代替大部分手工操作,从而解决传统的软件性能测试方法和测试装置手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓程序的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0012]上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
【专利附图】
【附图说明】
[0013]图1是本申请第一实施例提供的安卓设备的软件性能测试方法的流程图。
[0014]图2是监控状态示意图。
[0015]图3是本申请第二实施例提供的安卓设备的软件性能测试方法的流程图。
[0016]图4是一个Excel报表截图,表不底层分配的内存数。
[0017]图5是本申请第三实施例提供的软件性能测试方法的流程图。
[0018]图6是本申请第四实施例提供的用于测试安卓设备的软件测试装置结构示意图。
[0019]图7是本申请第五实施例提供的用于测试安卓设备的软件测试装置结构示意图。
[0020]图8是本申请第六实施例提供的用于测试安卓设备的软件测试装置结构示意图。
【具体实施方式】
[0021]为更进一步阐述本申请为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本申请提出的软件性能测试方法和测试装置的【具体实施方式】、方法、步骤、特征及其功效,详细说明如下。
[0022]有关本申请的前述及其他技术内容、特点及功效,在以下配合参考图式的较佳实施例的详细说明中将可清楚呈现。通过【具体实施方式】的说明,当可对本申请为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图式仅是提供参考与说明之用,并非用来对本申请加以限制。
[0023]请参考图1,图1是本申请第一实施例提供的安卓设备的软件性能测试方法的流程图。
[0024]所述软件性能测试方法,包括以下步骤:
Sll:接收被测软件的属性信息,所述被测软件运行于所述安卓设备。
[0025]所述属性信息包括但不限于以下内容:被测软件名字,例如“ com.tencent.qqpimsecure”;运行所述被测软件的方式,例如手动;所述性能指标数据的实时刷新间隔
坐寸ο
[0026]由于所述被测软件在所述安卓设备上的运行方式取决于测试人员的测试要求,例如可以是长时间不间断运行,可以是以某种频率运行等,根据不同的测试要求可以选择运行所述被测软件的方式是手动或者自动。手动执行即由测试人员在所述安卓设备上执行。
[0027]自动执行即由测试装置调用安卓设备中内置的monkeyrunner控制被测软件在所述安卓设备上运行。[0028]所述实时刷新间隔根据需要选择,例如半秒,I秒等。
[0029]S12:确认待监控的性能指标。
[0030]本实施例提供的软件性能测试方法可以单选一项性能指标进行测试,或者复选两项至多项性能指标进行测试。所述性能指标包括但不限于CPU占用、内存占用、电量占用、网络流量数据消耗。
[0031]S13:运行所述被测软件。
[0032]和在步骤Sll中所选择的方式保持一致运行所述被测软件。
[0033]S14:调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件。
[0034]所述安卓设备中一般内置有各种与待监控的性能指标相关的性能监控命令,例如查询CPU占用的top命令、查询内存占用的dumpsys命令,以及查询电量占用的命令,查询网络流量消耗的命令,如API函数(Application Programming Interface,应用程序编程接口,指一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节)。本实施例提供的软件性能测试方法由测试装置自动调用所需要的一个或多个命令,无需用户手动地发出调用动作,从而实现自动实时监控。
[0035]S15:实时显示监控所述被测软件期间的所述性能指标的数据。
[0036]请参阅图2,图2是监控状态示意图。由于监控是实时的,因此不必等到监控脚本执行完毕之后再查看数据,可以在执行监控的同时看到实时数据。
[0037]本实施例一提供的软件性能测试方法通过对性能指标进行自动实时监控,并实时显示性能指标数据,代替大部分手工操作,从而解决传统的软件性能测试方法和设备手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓程序的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0038]请参阅图3,图3是本申请第二实施例提供的安卓设备的软件性能测试方法的流程图,其包括以下步骤:
S21:接收被测软件的属性信息,所述被测软件运行于所述安卓设备。
[0039]S22:确认所述被测软件待监控的性能指标。
[0040]S23:运行所述被测软件。
[0041]S24:调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件。
[0042]S25:实时显示监控所述被测软件期间的所述性能指标的数据。
[0043]与第一实施例不同的是,第二实施例还包括以下步骤:
S26:停止监控所述被测软件并生成与所述数据相关的报表。
[0044]请参阅图4,图4是一个Excel报表截图,表示底层分配的内存数,是监控内存占用量后并且经过过滤或者分析的结果。
[0045]本实施例二提供的软件性能测试方法通过对性能指标进行自动实时监控,并实时显示性能指标的数据,并能生成报表供用户分析,从而代替大部分手工操作,从而解决传统的软件性能测试方法和设备手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓软件的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0046]请参阅图5,图5是本申请第三实施例提供的软件性能测试方法的流程图,其包括以下步骤:
S31:接收被测软件的属性信息,所述被测软件运行于所述安卓设备。
[0047]S32:确认所述被测软件待监控的性能指标。
[0048]S33:运行所述被测软件。
[0049]S34:调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件。
[0050]S35:实时显示监控所述被测软件期间的所述性能指标的数据。
[0051]与第一实施例不同的是,第三实施例还包括以下步骤:
在所述接收被测软件的属性信息之前,还包括步骤S30:提示所述被测软件与软件测试装置的连接状态,若连接正常,则进行所述接收被测软件的属性信息的步骤。
[0052]所述被测软件与软件测试装置可以通过USB (Universal Serial Bus,是连接计算机系统与外部设备的一个串口总线标准,也是一种输入输出接口技术规范,被广泛应用于个人电脑和移动设备等信息通讯产品)数据线进行连接。所述软件测试装置可以搭建在一台个人电脑上,而所述被测软件搭建在一台安卓设备上,例如手机、平板电脑等,或者测试装置和被测软件均搭建在安卓设备上。
[0053]本实施例三提供的软件性能测试方法通过对性能指标进行自动实时监控,并实时显示性能指标数据,从而代替大部分手工操作,从而解决传统的软件性能测试方法和设备手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓程序的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0054]请参阅图6,图6是本申请第四实施例提供的用于测试安卓设备中的软件性能的测试装置的结构示意图。
[0055]所述测试装置400包括:接收模块41,用于接收被测软件的属性信息,所述被测软件运行于所述安卓设备;确认模块42,用于确认待监控的性能指标;执行模块43,用于运行所述被测软件;调用模块44,用于调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件;显示模块45,用于实时显示监控所述被测软件期间的所述性能指标的数据。
[0056]本实施例四提供的软件测试装置通过对性能指标进行自动实时监控,并实时显示性能指标数据,代替大部分手工操作,从而解决传统的测试装置手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓程序的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0057]请参阅图7,图7是本申请第五实施例提供的测试装置的结构示意图。
[0058]所述软件测试装置500包括:接收模块51,用于接收被测软件的属性信息,所述被测软件运行于所述安卓设备;确认模块52,用于确认待监控的性能指标;执行模块53,用于运行所述被测软件;调用模块54,用于调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件;显示模块55,用于实时显示监控所述被测软件期间的所述性能指标的数据。
[0059]与第四实施例不同的是,第五实施例还包括结束模块56,用于停止监控所述被测软件并生成与所述数据相关的报表。
[0060]本实施例五提供的软件测试装置通过对性能指标进行自动实时监控,并实时显示性能指标数据,并能生成报表供用户分析,从而代替大部分手工操作,从而解决传统的测试装置手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓程序的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0061]请参阅图8,图8是本申请第六实施例提供的测试装置的结构示意图。
[0062]所述软件测试装置600包括:接收模块61,用于接收被测软件的属性信息,所述被测软件运行于所述安卓设备;确认模块62,用于确认待监控的性能指标;执行模块63,用于运行所述被测软件;调用模块64,用于调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件;显示模块65,用于实时显示监控所述被测软件期间的所述性能指标的数据。
[0063]与第四实施例不同的是,第六实施例还包括提示模块60,用于提示所述被测软件与测试装置的连接状态,若连接正常,则由所述接收模块61接收所述被测软件的属性信
肩、O [0064]本实施例六提供的软件测试装置通过对性能指标进行自动实时监控,并实时显示性能指标数据,代替大部分手工操作,从而解决传统的测试装置手动执行繁琐以及无法实时查看性能指标数据的技术问题,方便测试或开发人员实时监控被测安卓程序的性能数据,节省了大部分手工测试时间,同时,还方便开发人员调试程序。
[0065]需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0066]需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0067]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0068]以上所述,仅是本申请的较佳实施例而已,并非对本申请作任何形式上的限制,虽然本申请已以较佳实施例揭露如上,然而并非用以限定本申请,任何熟悉本专业的技术人员,在不脱离本申请技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本申请技术方案内容,依据本申请的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本申请技术方案的范围内。
【权利要求】
1.一种安卓设备中的软件性能测试方法,其特征在于:包括以下步骤: 接收被测软件的属性信息,所述被测软件运行于所述安卓设备; 确认所述被测软件待监控的性能指标; 运行所述被测软件; 调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件; 实时显示监控所述被测软件期间的所述性能指标的数据。
2.如权利要求1所述的软件性能测试方法,其特征在于:还进一步包括以下步骤:停止监控所述被测软件并生成与所述数据相关的报表。
3.如权利要求1所述的软件性能测试方法,其特征在于:在所述接收被测软件的属性信息之前,还包括以下步骤:提示所述被测软件与测试装置的连接状态,若连接正常,则进行所述接收被测软件的属性信息的步骤。
4.如权利要求1所述的软件性能测试方法,其特征在于:所述运行所述被测软件包括自动运行所述被测软件或手动运行所述被测软件。
5.如权利要求1所述的软件性能测试方法,其特征在于:所述属性信息包括所述性能指标数据的实时刷新间隔。
6.一种用于测试安卓设备中的软件性能的测试装置,其特征在于:包括: 接收模块,用于接收被测软件的属性信息,所述被测软件运行于所述安卓设备; 确认模块,用于确认待监控的性能指标; 执行模块,用于运行所述被测软件; 调用模块,用于调用所述安卓设备中内置的与待监控的性能指标相关的性能监控命令实时监控所述被测软件; 显示模块,用于实时显示监控所述被测软件期间的所述性能指标的数据。
7.如权利要求6所述的测试装置,其特征在于:还进一步包括以下:结束模块,用于停止监控所述被测软件并生成与所述数据相关的报表。
8.如权利要求6所述的测试装置,其特征在于:还包括提示模块,用于提示所述被测软件与软件测试装置的连接状态,若连接正常,则由所述接收模块接收所述被测软件的属性信息。
9.如权利要求6所述的测试装置,其特征在于:所述运行所述被测软件为自动运行所述被测软件。
10.如权利要求6所述的测试装置,其特征在于:所述属性信息包括所述性能指标数据的实时刷新间隔。
【文档编号】G06F11/36GK103631703SQ201210298740
【公开日】2014年3月12日 申请日期:2012年8月21日 优先权日:2012年8月21日
【发明者】陈强, 高安东 申请人:腾讯科技(深圳)有限公司