一种页面显示速度的获取方法及装置制造方法

文档序号:6508495阅读:174来源:国知局
一种页面显示速度的获取方法及装置制造方法
【专利摘要】本发明涉及一种页面显示速度的获取方法,包括以下步骤:获取步骤:获取应用程序的页面日志信息;过滤步骤:从该页面日志信息中过滤出该应用程序的页面显示信息;分析步骤:分析该页面显示信息,得到该应用程序的页面显示速度。本发明还提供一种页面显示速度的获取装置。利用本发明获取应用程序的页面显示速度,可以避免繁琐的计时过程,同时能满足精度要求。
【专利说明】一种页面显示速度的获取方法及装置

【技术领域】
[0001]本发明具体实施例涉及应用程序测试【技术领域】,特别涉及一种应用程序的页面显示速度的获取方法及装置。

【背景技术】
[0002]对应用程序中页面显示速度的获取一般通过计时方式实现,所计时间即可用来衡量该页面显示速度。目前,该计时方法主要包括以下几种:第一种是使用计时器进行手工计时,从页面启动时开始计时,并在肉眼观察到该页面加载完毕后结束计时。第二种是使用图像对比的方式计时,通过脚本控制计时器在页面启动时开始计时,然后持续将页面的当前截图与预设的页面加载完毕时的标准图像进行对比,如果对比结果符合一定的匹配标准,则认为页面加载完毕,结束计时。
[0003]然而,由于应用程序中页面显示速度一般都在毫秒级别,使用第一种计时方式进行手工计时显然无法满足对页面显示速度获取的精度要求。而第二种计时方式的门槛较高,需要一定的实施成本,并且需要频繁地对比和校准页面的当前截图,因此需要非常复杂的脚本才能实现,不利用重用。


【发明内容】

[0004]有鉴于此,有必要提供一种页面显示速度的获取方法及装置,可以避免繁琐的计时过程,同时能满足精度要求。
[0005]一种页面显示速度的获取方法,包括以下步骤:获取步骤:获取应用程序的页面日志信息;过滤步骤:从该页面日志信息中过滤出该应用程序的页面显示信息;分析步骤:分析该页面显示信息,得到该应用程序的页面显示速度。
[0006]一种页面显示速度的获取装置,包括:获取模块,用于获取应用程序的页面日志信息;过滤模块,用于从该页面日志信息中过滤出该应用程序的页面显示信息;分析模块,用于分析该页面显示信息,得到该应用程序的页面显示速度。
[0007]相较于现有技术,本发明页面显示速度的获取方法及装置,通过分析应用程序的页面显示信息得到应用程序的页面显示速度,可以避免繁琐的计时过程,同时能满足精度要求。
[0008]为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。

【专利附图】

【附图说明】
[0009]图1为一种终端的结构框图。
[0010]图2为本发明实施例提供的页面显示速度的获取方法的流程图。
[0011]图3为应用程序的页面显示信息的示意图。
[0012]图4为应用程序的页面显示速度的输出结果示意图。
[0013]图5为本发明实施例提供的页面显示速度的获取装置的框图。

【具体实施方式】
[0014]为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的【具体实施方式】、结构、特征及其功效,详细说明如后。
[0015]图1示出了一种终端的结构框图。如图1所示,终端I可以包括一个或多个(图中仅示出一个)存储器11、处理器12、存储控制器13、外设接口 14、通信模块15、输入单元16及显示单元17。这些组件通过一条或多条通讯总线/信号线相互通讯。
[0016]本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对终端I的结构造成限定。例如,终端I还可包括比图1所示更多或者更少的组件,或者具有与图1所示不同的配置。图1所示的各组件可以采用硬件、软件或其组合实现。
[0017]存储器11可用于存储软件程序以及模块,如本发明实施例中的页面显示速度的获取方法及装置对应的程序指令/模块,处理器12通过运行存储在存储器11内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的页面显示速度的获取方法。
[0018]存储器11可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器11可进一步包括相对于处理器12远程设置的存储器,这些远程设置的存储器可以通过网络连接至终端I。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。处理器12以及其他可能的组件对存储器11的访问可在存储控制器13的控制下进行。
[0019]外设接口 14将各种输入/输出装置耦合至处理器12以及存储器11。处理器12运行存储器11内的各种软件、指令以及执行终端I的各种功能以及进行数据处理。
[0020]通信模块15用于与通信网络或者其他设备进行通信。具体地,通信模块15例如可以是网卡151或RF (Rad1 Frequency,射频)模块152。网卡151作为局域网中连接计算机和传输介质的接口,用于实现与局域网传输介质之间的物理连接与电信号匹配,从而建立局域网并连接到因特网(Internet),与各种网络如局域网、城域网、广域网进行通信。网卡151可包括各种现有的用于执行上述功能的电路元件,例如处理器和存储器(包括ROM和RAM)等。RF模块152用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通信网络或者其他设备进行通信。RF模块152可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SM)卡、存储器等等。RF模块152可与各种网络如互联网、企业内部网、无线网络进行通信或者通过无线网络与其他设备进行通信。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(Global System for Mobile Communicat1n, GSM)、增强型移动通信技术(Enhanced Data GSM Environment, EDGE),宽带码分多址技术(wideband codedivis1n multiple access, W-CDMA),码分多址技术(Code divis1n access, CDMA)、时分多址技术(time divis1n multiple access, TDMA),无线保真技术(Wireless, Fidelity,WiFi)(如美国电气和电子工程师协会标准IEEE802.11a, IEEE802.lib, IEEE802.1lg和/或 IEEE802.lln)、网络电话(Voice over internet protocal, VoIP)、全球微波互联接入(Worldwide Interoperability for Microwave Access,W1-Max)、其他用于邮件、即时通信及短消息的协议,以及任何其他合适的通信协议,甚至可包括那些当前仍未被开发出来的协议。
[0021]输入单元16可用于接收输入的字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元16可包括按键161以及触控表面162。按键161例如可包括用于输入字符的字符按键,以及用于触发控制功能的控制按键。控制按键的实例包括“返回主屏”按键、开机/关机按键、拍照键等等。触控表面162可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控表面162上或在触控表面162附近的操作),并根据预先设定的程序驱动相应的连接装置。可选的,触控表面162可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器12,并能接收处理器12发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控表面162。除了触控表面162,输入单元16还可以包括其他输入设备。上述的其他输入设备包括但不限于物理键盘、轨迹球、鼠标、操作杆等中的一种或多种。
[0022]显示单元17用于显示由用户输入的信息、提供给用户的信息以及终端I的各种图形接口。这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。在一个实例中,显示单元17包括一个显示面板171。该显示面板171例如可为一个液晶显示面板(Liquid Crystal Display, LCD)、有机发光二极管(Organic Light-Emitting D1deDisplay, OLED)显不面板、电泳显不面板(Electro-Phoretic Display, EPD)等。进一步地,触控表面162可设置于显示面板171上从而与显示面板171构成一个整体。
[0023]参阅图2所示,本发明实施例提供一种页面显示速度的获取方法,其可由上述终端I执行,用于获取该终端I内运行的应用程序的页面显示速度。该终端I的具体实例包括但并不限于台式计算机、便携式计算机、智能手机、平板电脑或者其他类似的运算装置。该页面显示速度的获取方法包括以下步骤:
[0024]步骤SI,获取应用程序的页面日志信息;
[0025]步骤S2,从该页面日志信息中过滤出该应用程序的页面显示信息;
[0026]步骤S3,分析该页面显示信息,得到该应用程序的页面显示速度。
[0027]按照上述页面显示速度的获取方法,通过分析应用程序的页面显示信息得到该应用程序的页面显示速度,可以避免繁琐的计时过程,同时能满足精度要求。
[0028]在一些实例中,上述方法的各步骤的实现细节如下:
[0029]步骤SI所述的应用程序可以是游戏程序、视频程序、通话程序等。该应用程序由若干个动作(Activity)组件组成。每一个Activity组件对应于应用程序的一个页面,例如主菜单页面、设置页面、拨号页面等。该页面上可以包括一个或多个用户接口,用于与用户进行交互来完成某项任务,例如拨号任务、拍照任务等。为了执行不同的动作,一个处于启动状态的Activity组件可以触发另一个Activity组件启动,从而实现应用程序的页面之间的跳转。每当一个Activity组件被启动时,贝U前一个Activity组件被停止。所述页面显示速度是Activity组件被启动,该Activity组件对应的页面从开始显示到显示完成的快慢指标。
[0030]在应用程序的运行过程中,该应用程序的各种日志信息都被记录在系统日志文件中。应用程序的各种日志信息可以反映该应用程序的运行状态,例如应用程序的启动时间和关闭时间、是否发生错误、错误相关信息等。在本实施例中,以Android系统为例,该系统日志文件可以通过Android系统的一个命令行工具1gcat来获取并输出。所述应用程序的页面日志信息包括在该系统日志文件中,该页面日志信息是指与应用程序各Android组件相关的日志信息,例如各Android组件的类名、Android组件对应页面的显示消耗时间等。
[0031]若本实施例的页面显示速度的获取方法由计算机终端,例如台式计算机、便携式计算机执行,并且该计算机终端中安装有Android SDKCSoftware Development Kit),即专属Android应用开发的核心软件开发工具包,贝U可以通过adb 1gcat - s ActivityManager命令从所述系统日志文件中获取应用程序的页面日志信息。值得注意的是,在使用该adb1gcat - s ActivityManager命令获取该应用程序的页面日志信息之前,还可以先使用adb1gcat - c命令将已缓存的该应用程序的所有日志信息都清除,从而使步骤SI可以只获取该应用程序当前显示的页面对应的页面日志信息。当然,若不先清除已缓存的该应用程序的所有日志信息,则步骤SI可以获取该系统日志文件中该应用程序已显示过的若干页面和当前显示的页面对应的页面日志信息。
[0032]若本实施例的页面显示速度的获取方法由计算机终端执行,则步骤S2可以使用findstr〃Displayed〃命令从该页面日志信息中过滤出该应用程序的页面显示信息。该页面显示信息包括与该页面的显示有关的信息,例如该页面对应的显示消耗时间,即从开始显示该页面至该页面显示完毕所消耗的时间。结合上述获取应用程序的页面日志信息的命令,可以使用如下命令实现步骤SI和步骤S2,从而得到该应用程序的页面日志信息中的页面显不?目息:
[0033]adb logcat-c && adb logcat _s ActivityManager|findstr"Displayed"。
[0034]若在移动终端,例如智能手机、平板电脑上执行本实施例的页面显示速度的获取方法,则无法使用上述命令来实现步骤SI和步骤S2,而是需要使用已经封装好的程序来实现步骤SI和步骤S2。例如,该封装好的程序可以包括使用JAVA语言进行的如下设计:
[0035]mLogcatProc=Runtime.getRuntime().exec (new String[]{〃logcat〃,"ActivityManager:1*:S〃})0
[0036]参阅图3 所不,为使用上述命令 adb logcat-c && adb logcat _s ActivityManager I findstr〃Displayed〃得到的该应用程序的页面显示信息的示意图。通过观察图3可知,该应用程序的页面显示信息包括该应用程序的包名,如“activity com.example,logowner”,当前启动的Activity组件对应的类名,即该Activity组件对应页面的类名,如“.GetlogActivity”,以及该页面对应的显示消耗时间“317ms”。其中,该页面对应的显示消耗时间即用来衡量该页面显示速度。
[0037]因此,步骤S3需要分析该页面显示信息,从而得到该应用程序的页面显示速度。具体而言,步骤S3可以使用预设的关键字从该页面显示信息中提取该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。由于基于Android系统的应用程序的页面显示信息都具有相同的格式,参见图3,该应用程序的包名位于“Displayed”和“/”之间,该页面的类名位于该“/”与“:”之间,而该页面对应的显示消耗时间位于该“:”和“ms”之间。因此,所述预设的关键字可以为该“Displayed”,/”、“:”和“ms”,步骤S3可以根据预设的关键字的相应前后内容提取出该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。此外,步骤S3还可以通过所述显示单元17输出该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间,从而向用户展示该应用程序的页面显示速度,如图4所示。
[0038]在一个实例中,若本实施例的页面显示速度的获取方法在移动终端上执行,则步骤SI和步骤S2的JAVA实现代码可以如下所述:
[0039]mLogcatProc=Runtime.getRuntime().exec(new String[]
[0040]{"logcat", "ActivityManager:1*:S"});
[0041]reader=new BufferedReader(new
[0042]InputStreamReader(mLogcatProc.getlnputStream()))。
[0043]步骤S3中,提取该应用程序的包名的JAVA实现代码可以如下所述:
[0044]int pkgindexl=line.1ndexOf("Displayed");
[0045]String newline=line.substring(pkgindexl);
[0046]int pkgindex2=newline.1ndexOf("/");
[0047]String pkg=newline.substring(9, pkgindex2)?
[0048]提取该页面的类名的JAVA实现代码可以如下所述:
[0049]String newline2=newline.substring(pkgindex2);
[0050]int Activitylndex=newline2.1ndexOf(〃:〃);
[0051]String ActivityName=newline2.substring(1,Activitylndex)。
[0052]而提取显示该页面的消耗时间的实现代码可以如下所述:
[0053]String time=newline2.substring(newline2.1ndexOf (〃+〃)+1,
[0054]newline2.1ndexOf("ms"))。
[0055]参阅图5所示,本发明实施例还提供一种页面显示速度的获取装置100,该页面显示速度的获取装置100包括获取模块101、过滤模块102和分析模块103。
[0056]获取模块101,用于获取应用程序的页面日志信息。获取模块101在获取应用程序的页面日志信息之前,还可以先清除已缓存的该应用程序的所有日志信息。
[0057]过滤模块102,用于从该页面日志信息中过滤出该应用程序的页面显示信息。该应用程序的页面显示信息包括该应用程序的包名、页面的类名以及该页面对应的显示消耗时间。其中,该页面对应的显示消耗时间用于衡量所述页面显示速度。
[0058]分析模块103,用于分析该页面显示信息,得到该应用程序的页面显示速度。分析模块103用于使用预设的关键字从该页面显示信息中提取该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间,并输出该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。
[0059]对于以上各模块的具体工作过程,可进一步参考本发明实施例提供的页面显示速度的获取方法,在此不再重复。
[0060]综上所述,本实施例的页面显示速度的获取装置100,通过分析应用程序的页面显示信息得到该应用程序的页面显示速度,可以避免繁琐的计时过程,同时能满足精度要求。
[0061]此外,本发明实施例还提供一种计算机可读存储介质,其内存储有计算机可执行指令,上述的计算机可读存储介质例如为非易失性存储器例如光盘、硬盘、或者闪存。上述的计算机可执行指令用于让计算机或者类似的运算装置完成上述的页面显示速度的获取方法中的各种操作。
[0062]以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭示如上,然而并非用以限定本发明,任何本领域技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简介修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
【权利要求】
1.一种页面显示速度的获取方法,其特征在于,该方法包括以下步骤: 获取步骤:获取应用程序的页面日志信息; 过滤步骤:从该页面日志信息中过滤出该应用程序的页面显示信息; 分析步骤:分析该页面显示信息,得到该应用程序的页面显示速度。
2.如权利要求1所述的页面显示速度的获取方法,其特征在于,在所述获取步骤前还包括: 清除已缓存的该应用程序的所有日志信息。
3.如权利要求1所述的页面显示速度的获取方法,其特征在于,所述应用程序的页面显示信息包括该应用程序的包名、页面的类名以及该页面对应的显示消耗时间。
4.如权利要求3所述的页面显示速度的获取方法,其特征在于,所述的页面显示速度根据该页面对应的显示消耗时间衡量。
5.如权利要求4所述的页面显示速度的获取方法,其特征在于,所述分析步骤包括: 使用预设的关键字从该页面显示信息中提取该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。
6.如权利要求5所述的页面显示速度的获取方法,其特征在于,所述分析步骤还包括: 输出该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。
7.一种页面显示速度的获取装置,其特征在于,该装置包括: 获取模块,用于获取应用程序的页面日志信息; 过滤模块,用于从该页面日志信息中过滤出该应用程序的页面显示信息; 分析模块,用于分析该页面显示信息,得到该应用程序的页面显示速度。
8.如权利要求7所述的页面显示速度的获取装置,其特征在于,所述获取模块在获取应用程序的页面日志信息之前,还用于: 清除已缓存的该应用程序的所有日志信息。
9.如权利要求7所述的页面显示速度的获取装置,其特征在于,所述应用程序的页面显示信息包括该应用程序的包名、页面的类名以及该页面对应的显示消耗时间。
10.如权利要求9所述的页面显示速度的获取装置,其特征在于,所述的页面显示速度根据该页面对应的显示消耗时间衡量。
11.如权利要求10所述的页面显示速度的获取装置,其特征在于,所述分析模块用于: 使用预设的关键字从该页面显示信息中提取该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。
12.如权利要求11所述的页面显示速度的获取装置,其特征在于,所述分析模块还用于: 输出该应用程序的包名、该页面的类名以及该页面对应的显示消耗时间。
【文档编号】G06F17/30GK104424198SQ201310367076
【公开日】2015年3月18日 申请日期:2013年8月21日 优先权日:2013年8月21日
【发明者】姚潮生 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1