CN105630668A - 一种测试方法及装置 - Google Patents

一种测试方法及装置 Download PDF

Info

Publication number
CN105630668A
CN105630668A CN201410717448.5A CN201410717448A CN105630668A CN 105630668 A CN105630668 A CN 105630668A CN 201410717448 A CN201410717448 A CN 201410717448A CN 105630668 A CN105630668 A CN 105630668A
Authority
CN
China
Prior art keywords
function
application program
time
timer
allocating time
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
Application number
CN201410717448.5A
Other languages
English (en)
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.)
Shenzhen Tencent Computer Systems Co Ltd
Original Assignee
Shenzhen Tencent Computer Systems Co 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 Shenzhen Tencent Computer Systems Co Ltd filed Critical Shenzhen Tencent Computer Systems Co Ltd
Priority to CN201410717448.5A priority Critical patent/CN105630668A/zh
Publication of CN105630668A publication Critical patent/CN105630668A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种测试方法及装置,用于对运行在终端内的应用程序进行测试,在一个实施方式中所述测试方法可包括以下步骤:在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间;在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间;在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名;根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及将所述调用时间与所述函数名对应存储。根据上述方法,可自动加载测试单元,提高测试的效率。

Description

一种测试方法及装置
技术领域
本发明涉及计算机技术领域,特别涉及一种测试方法及装置。
背景技术
随着电子设备的普及,为了适应用户的更多需求,终端软件也越来越多。电子设备中软件的管理与检测也越来越重要。现有技术中,关于软件的某个功能的检测,通过人工对具体功能的重复检测,消耗很多的人力物力。因此提高性能检测的效率是亟待解决的问题。
发明内容
有鉴于此,本发明提供一种测试方法及装置,可以有效提高性能测试的效率。
一种测试方法,所述方法包括以下步骤:
在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间;
在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间;
在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名;
根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及
将所述调用时间与所述函数名对应存储。
一种测试装置,所述装置包括以下模块:
第一获时模块,用于在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间;
第二获时模块,用于在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间;
函数名获取模块,用于在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名;
第一计算模块,用于根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及
存储模块,用于将所述调用时间与所述函数名对应存储。
根据上述实施例的方法及装置,通过在应用程序的函数中加载测试单元,可以有效提高性能测试效率。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1为一种电子终端的结构框图。
图2为第一实施例提供的一种测试方法流程图。
图3为第二实施例提供的一种测试方法流程图。
图4为第三实施例提供的一种测试方法流程图。
图5为第四实施例提供的一种测试方法流程图。
图6为第五实施例提供的一种测试装置结构框图。
图7为第六实施例提供的一种测试装置结构框图。
图8为第七实施例提供的一种测试装置结构框图。
图9为第八实施例提供的一种测试装置结构框图。
具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
图1示出了一种电子终端的结构框图。如图1所示,电子终端100包括一个或多个(图中仅示出一个)处理器102、存储器104、存储控制器106、RF(RadioFrequency,射频)模块108、网络模块110、传感器112、显示模块114。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对电子终端100的结构造成限定。例如,电子终端100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。上述的电子终端100的具体实例包括但并不限于手持式计算机、移动电话、媒体播放器、车载设备、个人数字助理及前述装置的各种组合。
本领域普通技术人员可以理解,相对于处理器102来说,所有其他的组件均属于外设,处理器102与这些外设之间通过多个外设接口120相耦合。外设接口124可基于以下标准实现:通用异步接收/发送装置(UniversalAsynchronousReceiver/Transmitter,UART)、通用输入/输出(GeneralPurposeInputOutput,GPIO)、串行外设接口(SerialPeripheralInterface,SPI)、内部集成电路(Inter-IntegratedCircuit,I2C),但不并限于上述标准。在一些实例中,外设接口120可仅包括总线;在另一些实例中,外设接口120还可包括其他元件,如一个或者多个控制器,例如用于连接液晶显示面板的显示控制器或者用于连接存储器的存储控制器106。此外,这此控制器还可以从外设接口120中脱离出来,而集成于处理器102内或者相应的外设内。
存储器104可用于存储软件程序以及模块,如本发明实施例中的测试方法/装置对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的测试方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至电子终端100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
RF模块108用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。RF模块108可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。RF模块108可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(GlobalSystemforMobileCommunication,GSM)、增强型移动通信技术(EnhancedDataGSMEnvironment,EDGE),宽带码分多址技术(widebandcodedivisionmultipleaccess,W-CDMA),码分多址技术(Codedivisionaccess,CDMA)、时分多址技术(timedivisionmultipleaccess,TDMA),无线保真技术(Wireless,Fidelity,WiFi)(如美国电气和电子工程师协会标准IEEE802.11a,IEEE802.11b,IEEE802.11g和/或IEEE802.11n)、网络电话(Voiceoverinternetprotocal,VoIP)、全球微波互联接入(WorldwideInteroperabilityforMicrowaveAccess,Wi-Max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。
网络模块110用于接收以及发送网络信号。上述网络信号可包括无线信号或者有线信号。在一个实例中,上述网络信号为WiFi信号,由于WiFi的工作频率也处于射频的频段内,此时网络模块可具有与RF模块108类似的硬件结构,即可包括天线、射频收发器、数字信号处理器、加密/解密芯片等元件。在一个实例中,上述网络信号为有线网络信号。此时,网络模块110可包括处理器、随机存储器、转换器、晶体振荡器等元件。
传感器112的实例包括但并不限于:光传感器、运行传感器、及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可以感测环境光的明暗,进而处理器102执行的一些模块可利用环境光传感器的输出来自动调节显示的输出。接近传感器可在电子终端100移动到耳边时,关闭显示输出。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于电子终端100还可配置的陀螺仪、气压计、湿度计、温度计等其他传感器,在此不再赘述。
显示模块114用于显示由用户输入的信息、提供给用户的信息以及电子终端100的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。在一个实例中,显示模块114包括一个显示面板。显示面板例如可为一个液晶显示面板(LiquidCrystalDisplay,LCD)、有机发光二极管(OrganicLight-EmittingDiodeDisplay,OLED)显示面板、电泳显示面板(Electro-PhoreticDisplay,EPD)等。进一步地,触控表面可设置于显示面板上从而与显示面板构成一个整体。在另一些实施例中,显示模块114还可包括其他类型的显示装置,例如包括一个投影显示装置。相比于一般的显示面板,投影显示装置还需要包括一些用于投影的部件例如透镜组。
上述的软件程序以及模块包括:操作系统以及多性能测试模块。其中操作系统例如可为LINUX,UNIX,WINDOWS,或者移动操作系统如Android,IOS等,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通讯,从而提供其他软件组件的运行环境。性能测试模块运行在操作系统的基础上,用于检测软件等的性能使用情况等内容,其具体细节将结合实施例描述如下。
第一实施例
图2示出了一种测试方法流程图,如图2所示,本实施例的方法,用于对运行在终端内的应用程序进行测试,所述方法包括以下步骤:
步骤S101、在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间。
所述函数为编程语言中的函数。所述函数过程中的这些语句用于完成某些有意义的工作——通常是处理文本,控制输入或计算数值。通过在程序代码中引入函数名称和所需的参数,可在该程序中执行(或称调用)该函数。可以知道的是,所述应用程序的各个功能是由不同所述应用程序的函数实现的。
在本实施例中,所述第一计时器为了测试所述函数的附加单元,用于获取当前终端的应用程序的函数执行开始时的实时时间。所述函数为完整可执行单元,通过添加所述第一计时器,增加了获取时间的功能。可以理解的是,由于所述第一计时器在函数的起始位置加载,则第一计时器获取的所述第一时间为所述函数开始运行的时间。
在一个实例中,所述第一计时器为直接写入所述函数起始处的代码,调用所述函数时,则调用所述应用程序的函数时可先启动所述第一计时器获取所述第一时间。在另一个实例中,所述第一计时器为一个全局函数。在所述函数起始处写入调用所述第一计时器的语句获取所述第一时间,即记录所述函数被调用的起始时间。
步骤S102、在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间。
所述第二计时器与所述第一计时器有相似的功能,也可以用于获取所述终端的实时时间。可以理解的是,由于所述第二计时器在函数的结束位置加载,则第二计时器获取的所述第二时间为所述函数运行结束时刻的时间点。
在一个实例中,所述第二计时器为直接写入所述函数结束处的代码,所述函数调用结束时,启动所述第二计时器获取所述第二时间。
在另一个实例中,所述第二计时器为一个全局函数。在所述函数结束处写入调用所述第二计时器的语句获取所述第二时间,即记录所述函数被调用的起始时间。进一步地,在此实例中,所述第二计时器和第一计时器可以是不同时间调用的一个全局函数。
步骤S103、在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名。
所述获取函数名指令为本实施例的中所述函数附加单元,用于测试所述函数的性能等各属性而增加的单元。
在一个实例中,所述获取函数名指令可直接写入所述函数的结束处。也可以如所说第一计时器与第二计时器通过调用函数语句调用所述获取函数名指令。
步骤S104、根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间。
由于所述第一时间为所述应用程序的函数运行的起始时间,所述第二时间为所述函数运行的结束时间。则可以知道,第一时间与第二时间之间的时间段则为调用所述函数花费时间。
步骤S105、将所述调用时间与所述函数名对应存储。
进一步地,将所述应用程序的函数的调用时间写入日志中所述函数名对应位置。所述日志可用于记录硬件、软件及系统问题的信息,也可以监视系统发生的事件。用户可用它来检查错误发生的原因等。
根据本实施例的方法,通过在函数起始位置与结束为止加载计时器获取执行时的时间,可以自动计算得到所述函数的调用时间,提高性能检测的效率,减少测试时间。
第二实施例
本实施例提供一种测试方法,本实施与第一实施例类似,其不同之处在于,如图3所示,所述方法在步骤S105之后还包括:
步骤S201、根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数。
进一步地,所述计数器的数据存储至在所述应用程序的日志中的函数名对应位置。
所述计数器用于记录所属函数被调用的次数。可以知道的是,若所述函数被调用过,则存在已经赋值的所述计数器。在一个实例中,若所述函数首次被加载,可以在所述日志中新建所述函数的计数器。例如,可以直接用阿拉伯数字存储计数器的值。
步骤S202、更新所述计数器的值。
更新所述计数器的值,例如,将所述计数器中的值加一。
进一步地,将所述应用程序的函数的计数器中的数据存储在日志中所述函数名对应位置。
根据本实施例的方法,通过及时更新日志中数据,统计函数的调用频率,作为判断软件的性能的依据,自动的更新数据的方式有效提高检测效率。
第三实施例
本实施例提供一种测试方法,本实施与第二实施例类似,其不同之处在于,如图4所示,在步骤S202之后还包括:
步骤S301、根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数。
在一个实例中,将所述函数的每次调用时间的总和除以所述计数器中的值得到平均调用时间。
步骤S302、将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。
在一个实施方式中,将所述述应用程序的函数的平均调用时间及最长调用时间存储至所述应用程序对应的日志中,将所述平均调用时间及最长调用时间写入所述日志中。可以知道的是,每次调用函数后所述平均调用时间及最长调用时间可能发生变化,在一个实例中,所述写入动作可以是用上述计算结果替换日志中所述平均调用时间及最长调用时间的值。在一个实例中,若所述函数首次被调用,则所述平均调用时间与最长调用时间均为首次调用所述函数的调用时间。则可以增加判断所述计数器的值,若为一,则不进行所述计算所述平均调用时间及最长调用时间的步骤,直接将本次调用时间的值赋值给所述平均调用时间及最长调用时间的存储变量。
根据本实施例的方法,自动的计算统计中的数据,节省人力去检测相关数据,提高检测效率。
第四实施例
本实施例提供一种测试方法,本实施与第三实施例类似,其不同之处在于,如图5所示,所述方法还包括:
步骤S401、根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。
例如,在一个实例中,可以安装各函数首次被调用的时间先后顺序排列各个函数的各参数表,所述参数表可包括、平均调用时间、最长调用时间、调用次数、调用频率,总的调用时间等。
根据本实施例的方法,通过生成各函数的性能对比列表,能够减少人工繁琐缓慢的工作模式,更高效,迅捷,准确的进行测试。
第五实施例
本实施例提供一种测试装置,如图6所示,本实施例的装置包括:第一获时模块501、第二获时模块502、函数名获取模块503、第一计算模块504、及存储模块505。
第一获时模块501,用于在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间。
在本实施例中,所述第一计时器为了测试所述函数的附加单元,用于获取当前终端的应用程序的函数执行开始时的实时时间。所述函数为完整可执行单元,通过添加所述第一计时器,增加了获取时间的功能。可以理解的是,由于所述第一计时器在函数的起始位置加载,则第一计时器获取的所述第一时间为所述函数开始运行的时间。
在一个实例中,所述第一计时器为直接写入所述函数起始处的代码,调用所述函数时,则调用所述应用程序的函数时可先启动所述第一计时器获取所述第一时间。在另一个实例中,所述第一计时器为一个全局函数。在所述函数起始处写入调用所述第一计时器的语句获取所述第一时间,即记录所述函数被调用的起始时间。
第二获时模块502,用于在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间。
所述第二计时器与所述第一计时器有相似的功能,也可以用于获取所述终端的实时时间。可以理解的是,由于所述第二计时器在函数的结束位置加载,则第二计时器获取的所述第二时间为所述函数运行结束时刻的时间点。
在一个实例中,所述第二计时器为直接写入所述函数结束处的代码,所述函数调用结束时,启动所述第二计时器获取所述第二时间。在另一个实例中,所述第二计时器为一个全局函数。在所述函数结束处写入调用所述第二计时器的语句获取所述第二时间。
函数名获取模块503,用于在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名。
在一个实例中,所述获取函数名指令可直接写入所述函数的结束处。也可以如所说第一计时器与第二计时器通过调用函数语句调用所述获取函数名指令。
第一计算模块504,用于根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间。
由于所述第一时间为函数运行的起始时间,所述第二时间为所述函数运行的结束时间。则可以知道,第一时间与第二时间之间的时间段则为调用所述函数花费时间。
存储模块505,用于将所述调用时间与所述函数名对应存储。
进一步地,将所述应用程序的函数的调用时间存储至日志中所述函数名对应位置。
所述日志可用于记录硬件、软件及系统问题的信息,也可以监视系统发生的事件。用户可用它来检查错误发生的原因等。
根据本实施例的装置,通过在函数起始位置与结束为止加载计时器获取执行时的时间,可以自动计算得到所述函数的调用时间,提高性能检测的效率,减少测试时间。
第六实施例
本实施例提供一种测试装置,本实施例与第六实施例类似,其不同之处在于,如图7所示,本实施例的装置还包括:
计数器加载模块601,用于根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数。
所述计数器用于记录所属函数被调用的次数。可以知道的是,若所述函数被调用过,则存在已经赋值的所述计数器。在一个实例中,若所述函数首次被调用,可以在所述日志中新建所述函数的计数器。例如,简单地,可以直接用阿拉伯数字存储计数器的值。
更新模块602,用于更新所述计数器的值。
更新所述计数器的值,例如,将所述计数器中的值加一。
进一步地,将所述应用程序的函数的计数器中的数据存储在日志中所述函数名对应位置。
根据本实施例的装置,通过及时更新计数器数据,统计函数的调用频率,作为判断软件的性能的依据,自动的更新数据的方式有效提高检测效率。
第七实施例
本实施例提供一种测试装置,本实施例与第七实施例类似,其不同之处在于,如图8所示,本实施例的装置还包括:
第二计算模块701,用于根据所述计数器的值以及每次调用所述应用程序的函数记录的所述调用时间计算所述应用程序的函数平均调用时间及最长调用时间。
在一个实例中,将所述函数的每次调用时间的总和除以所述计数器中的值得到平均调用时间。
所述存储模块505还包括,用于将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。
将所述平均调用时间及最长调用时间写入所述日志中。可以知道的是,每次调用函数后所述平均调用时间及最长调用时间可能发生变化,在一个实例中,所述写入动作可以是用上述计算结果替换存储数据中所述平均调用时间及最长调用时间的值。在一个实例中,若所述函数首次被调用,则所述平均调用时间与最长调用时间均为首次调用所述函数的调用时间。则可以增加判断所述计数器的值,若为一,则不进行所述计算所述平均调用时间及最长调用时间的步骤,直接将本次调用时间的值赋值给所述平均调用时间及最长调用时间的存储变量。
根据本实施例的装置,自动的计算统计中的数据,节省人力去检测相关数据,提高检测效率。
第八实施例
本实施例提供一种测试装置,本实施例与第八实施例类似,其不同之处在于,如图9所示,本实施例的装置还包括:
生成模块801,用于根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。
例如,在一个实例中,可以安装各函数首次被调用的时间先后顺序排列各个函数的各参数表,所述参数表可包括、平均调用时间、最长调用时间、调用次数、调用频率,总的调用时间等。
根据本实施例的装置,通过生成各函数的性能对比列表,能够减少人工繁琐缓慢的工作模式,更高效,迅捷,准确的进行测试。
此外,本发明实施例还提供一种计算机可读存储介质,其内存储有计算机可执行指令,上述的计算机可读存储介质例如为非易失性存储器例如光盘、硬盘、或者闪存。上述的计算机可执行指令用于让计算机或者类似的运算装置完成上述的测试方法中的各种操作。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭示如上,然而并非用以限定本发明,任何本领域技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (10)

1.一种测试方法,用于对运行在终端内的应用程序进行测试,其特征在于,所述测试方法包括以下步骤:
在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间;
在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间;
在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名;
根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及
将所述调用时间与所述函数名对应存储。
2.如权利要求1所述的测试方法,其特征在于,所述测试方法还包括:
根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数;
更新所述计数器的值。
3.如权利要求2所述的测试方法,其特征在于,所述测试方法还包括:
根据所述计数器的值以及每次调用所述应用程序的函数记录的所述调用时间计算所述应用程序的函数平均调用时间及最长调用时间;
将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。
4.如权利要求3所述的测试方法,其特征在于,所述测试方法还包括:
根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。
5.如权利要求1-4所述的任意一项测试方法,其特征在于,所述测试方法还包括:
将所述应用程序的函数的调用的相关数据写入日志中所述函数名对应位置。
6.一种测试装置,用于对运行在终端内的应用程序进行测试,其特征在于,所述装置包括以下模块:
第一获时模块,用于在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间;
第二获时模块,用于在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间;
函数名获取模块,用于在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名;
第一计算模块,用于根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及
存储模块,用于将所述调用时间与所述函数名对应存储。
7.如权利要求6所述的测试装置,其特征在于,所述装置还包括:
计数器加载模块,用于根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数;
更新模块,用于更新所述计数器的值。
8.如权利要求7所述的测试装置,其特征在于,所述装置还包括:
第二计算模块,用于根据所述计数器的值以及每次调用所述应用程序的函数记录的所述调用时间计算所述应用程序的函数平均调用时间及最长调用时间;
所述存储模块还包括,用于将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。
9.如权利要求8所述的测试装置,其特征在于,所述装置还包括:
生成模块,用于根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。
10.如权利要求6-9所述的任意一项测试装置,其特征在于,所述测试装置还包括:
将所述应用程序的函数的调用数据写入日志中所述函数名对应位置。
CN201410717448.5A 2014-12-01 2014-12-01 一种测试方法及装置 Pending CN105630668A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410717448.5A CN105630668A (zh) 2014-12-01 2014-12-01 一种测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410717448.5A CN105630668A (zh) 2014-12-01 2014-12-01 一种测试方法及装置

Publications (1)

Publication Number Publication Date
CN105630668A true CN105630668A (zh) 2016-06-01

Family

ID=56045639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410717448.5A Pending CN105630668A (zh) 2014-12-01 2014-12-01 一种测试方法及装置

Country Status (1)

Country Link
CN (1) CN105630668A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480029A (zh) * 2017-08-02 2017-12-15 北京深思数盾科技股份有限公司 一种函数调用时间的监控方法及装置
CN108121653A (zh) * 2016-11-29 2018-06-05 华为技术有限公司 测试程序性能的方法及装置
CN108959069A (zh) * 2018-06-11 2018-12-07 北京奇艺世纪科技有限公司 一种函数运行的追踪方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311327B1 (en) * 1998-03-02 2001-10-30 Applied Microsystems Corp. Method and apparatus for analyzing software in a language-independent manner
CN101408862A (zh) * 2007-10-12 2009-04-15 李周 一种嵌入式系统测试方法
CN102144222A (zh) * 2008-07-02 2011-08-03 国立大学法人东京工业大学 执行时间估计方法、执行时间估计程序以及执行时间估计装置
CN102222041A (zh) * 2011-06-15 2011-10-19 深圳市运通信息技术有限公司 一种基于嵌入式软件的测试分析系统及方法
CN102662806A (zh) * 2012-02-29 2012-09-12 浙江大学 一种针对Java卡不同性能指标的自适应测试方法
CN102722434A (zh) * 2012-05-24 2012-10-10 兰雨晴 一种针对Linux进程调度的性能测试方法和工具

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311327B1 (en) * 1998-03-02 2001-10-30 Applied Microsystems Corp. Method and apparatus for analyzing software in a language-independent manner
CN101408862A (zh) * 2007-10-12 2009-04-15 李周 一种嵌入式系统测试方法
CN102144222A (zh) * 2008-07-02 2011-08-03 国立大学法人东京工业大学 执行时间估计方法、执行时间估计程序以及执行时间估计装置
CN102222041A (zh) * 2011-06-15 2011-10-19 深圳市运通信息技术有限公司 一种基于嵌入式软件的测试分析系统及方法
CN102662806A (zh) * 2012-02-29 2012-09-12 浙江大学 一种针对Java卡不同性能指标的自适应测试方法
CN102722434A (zh) * 2012-05-24 2012-10-10 兰雨晴 一种针对Linux进程调度的性能测试方法和工具

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王先培: "《测控系统可靠性基础》", 31 July 2012, 武汉大学出版社 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108121653A (zh) * 2016-11-29 2018-06-05 华为技术有限公司 测试程序性能的方法及装置
CN107480029A (zh) * 2017-08-02 2017-12-15 北京深思数盾科技股份有限公司 一种函数调用时间的监控方法及装置
CN108959069A (zh) * 2018-06-11 2018-12-07 北京奇艺世纪科技有限公司 一种函数运行的追踪方法和装置

Similar Documents

Publication Publication Date Title
CN108415739B (zh) 一种动态链接库函数的钩挂方法、装置和存储介质
CN107276789B (zh) 日志上传方法、装置及计算机可读存储介质
CN107302628B (zh) 应用功能的控制方法及相关产品
CN106020987A (zh) 处理器中内核运行配置的确定方法以及装置
CN107908952B (zh) 识别真机和模拟器的方法、装置和终端
CN109726067B (zh) 一种进程监控方法以及客户端设备
CN107329901B (zh) 数据包抓取方法、终端、服务器和存储介质
CN108242837A (zh) 电子设备和控制电子设备的充电的方法
CN104516812A (zh) 一种软件测试方法和装置
CN104954402A (zh) 一种应用推荐方法、系统及装置
CN111858112B (zh) 一种检测内存泄露的方法、客户端及服务器
CN104268472B (zh) 还原被第三方动态库修改函数地址的方法和装置
CN106020844A (zh) 处理器中内核运行配置的确定方法以及装置
CN104298587A (zh) 一种代码覆盖测试方法、装置和系统
CN105760203A (zh) 一种软件升级方法及终端设备
CN106155717A (zh) 一种将sdk集成到第三方apk的方法和装置
EP2869604B1 (en) Method, apparatus and device for processing a mobile terminal resource
CN105740145A (zh) 定位控件中的元素的方法及装置
CN104994547A (zh) 一种网络访问方法和用户终端
CN109753425A (zh) 弹窗处理方法及装置
US20160341569A1 (en) Method of calibrating geomagnetic sensor and electronic device adapted thereto
CN105630668A (zh) 一种测试方法及装置
CN109245195A (zh) 移动终端和充电处理的方法、装置及存储装置
CN105279077A (zh) 自动化测试方法和装置
CN108052437B (zh) 重启定位方法、移动终端及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160601