CN107656866A - 一种测试应用流畅度的方法、移动终端和计算设备 - Google Patents

一种测试应用流畅度的方法、移动终端和计算设备 Download PDF

Info

Publication number
CN107656866A
CN107656866A CN201710796246.8A CN201710796246A CN107656866A CN 107656866 A CN107656866 A CN 107656866A CN 201710796246 A CN201710796246 A CN 201710796246A CN 107656866 A CN107656866 A CN 107656866A
Authority
CN
China
Prior art keywords
test
fluency
script
time
mobile terminal
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.)
Granted
Application number
CN201710796246.8A
Other languages
English (en)
Other versions
CN107656866B (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.)
Beijing North Star Technology Development Co ltd
Original Assignee
Xiamen Meitu Mobile Technology 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 Xiamen Meitu Mobile Technology Co Ltd filed Critical Xiamen Meitu Mobile Technology Co Ltd
Priority to CN201710796246.8A priority Critical patent/CN107656866B/zh
Publication of CN107656866A publication Critical patent/CN107656866A/zh
Application granted granted Critical
Publication of CN107656866B publication Critical patent/CN107656866B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本发明公开了一种测试应用流畅度的方法,适于在移动终端中执行,该移动终端与计算设备通信连接,且存储有测试脚本,该测试脚本包括多个脚本单元,每个脚本单元对应一种测试类别,并适于对应用界面执行该测试类别对应的滑动操作,该方法包括:接收计算设备下发的包括测试类别和测试次数的脚本执行指令;确定该测试类别对应的脚本单元,启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作;获取该应用的应用包名,以及测试过程中的连续跳帧数目和每帧图像的绘制时间;将所获取到的内容发送给计算设备,并由计算设备计算绘制时间的流畅性参数和跳帧次数,以及根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。

Description

一种测试应用流畅度的方法、移动终端和计算设备
技术领域
本发明涉及自动化测试领域,特别涉及一种测试应用流畅度的方法、移动终端和计算设备。
背景技术
随着移动通信领域的快速发展,智能手机得到了广泛普及,人们也越来越关注手机应用的质量问题。其中,手机的流畅性是影响用户体验最大的问题之一,因此各应用厂商或者手机厂商对手机的流畅性要求越来越高。而在解决手机或者应用的流畅性前,必须先能够测试其流畅性。
目前手机厂商是使用机械臂手配合高速相机进行自动测试,然后通过拍摄到的画面进行分析来评判流畅性。但利用机械臂手配合高速相机进行测试,需要投入的成本很高;且出现问题时,无法提供有效信息给研发分析。
因此,需要提供一种更有效的测试应用流畅性的方法。
发明内容
为此,本发明提供一种测试应用流畅度的方案,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种测试应用流畅度的方法,适于在移动终端中执行,移动终端与计算设备通信连接,移动终端中存储有测试应用流畅性的测试脚本,所述测试脚本包括多个脚本单元,每个脚本单元对应一种测试类别,并适于对应用界面执行该测试类别对应的滑动操作,该方法包括步骤:接收计算设备下发的脚本执行指令,脚本执行指令包括测试类别和测试次数;确定测试脚本中与该测试类别对应的脚本单元,启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作,并获取该应用的应用包名;获取测试过程中的连续跳帧数目和每帧图像的绘制时间;以及将应用包名、连续跳帧数目和每帧图像的绘制时间发送给计算设备,并由计算设备根据每帧图像的绘制时间计算绘制时间的流畅性参数,以及根据连续跳帧数目计算跳帧次数,并根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。
可选地,在根据本发明的测试应用流畅度的方法中,流畅性参数包括以下至少一种:绘制时间的标准差σ;绘制时间的第p百分位数,即将所有绘制时间从小到大排列时处于p%位置的值;绘制最慢的m帧图像的平均绘制时间。
可选地,在根据本发明的测试应用流畅度的方法中,p=90%,m=10;标准差其中xi为第i帧图像的绘制时间。
可选地,在根据本发明的测试应用流畅度的方法中,跳帧次数的初始值为0,根据连续跳帧数目计算跳帧次数的步骤包括:分别获取测试过程中的多次连续跳帧数目,若某次连续跳帧数目大于标准值,则将跳帧次数加1。
可选地,在根据本发明的测试应用流畅度的方法中,每帧图像的绘制时间适于通过dumpsys gfxinfo packagename reset方法获取,所述连续跳帧数目适于通过logcat中的Choreographer类获取。
可选地,在根据本发明的测试应用流畅度的方法中,滑动操作包括向上滑动、向下滑动、向左滑动和向右滑动中的至少一种,测试次数包括滑动次数。
根据本发明的又一个方面,提供一种移动终端,包括一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本发明的测试应用流畅度的方法的指令。
根据本发明的又一个方面,提供一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,指令当由移动终端执行时,使得移动终端执行根据本发明的测试应用流畅度的方法。
根据本发明的又一个方面,提供一种测试应用流畅度的方法,适于在计算设备中执行,计算设备与移动终端与通信连接,移动终端中存储有测试应用流畅性的测试脚本,测试脚本包括多个脚本单元,每个脚本单元对应一种测试类别,并适于对应用界面执行该测试类别对应的滑动操作,该方法包括步骤:向移动终端发送脚本执行指令,脚本执行指令包括测试类别和测试次数,并由移动终端确定与该测试类别对应的脚本单元,以及启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作;接收移动终端在启动测试后所发送的应用包名、连续跳帧数目和每帧图像的绘制时间;根据每帧图像的绘制时间计算绘制时间的流畅性参数,并根据连续跳帧数目计算跳帧次数;以及根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。
根据本发明的又一个方面,提供一种计算设备,包括一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本发明的测试应用流畅度的方法的指令。
根据本发明的又一个方面,还提供一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,指令当由计算设备执行时,使得计算设备执行根据本发明的测试应用流畅度的方法。
根据本发明的又一个方面,还提供一种测试应用流畅度的系统,包括如上所述的计算设备和移动终端。
根据本发明的技术方案,移动终端中预先存储多个脚本单元,计算设备发送脚本执行指令后,移动终端开始对应的测试操作。之后,计算设备从移动终端中获取测试过程中的连续跳帧数目和每帧图像的绘制时间,并根据连续跳帧数目计算跳帧次数,以及根据每帧图像的绘制时间计算绘制时间的流畅性参数。最后,就可以根据流畅性参数和跳帧次数来判断某应用的流畅度。
这种方法能够更加直观准确的度量流畅性能,而且将流畅性测试步骤在移动终端中自动化,确保做竞品对比时操作一致。同时相比机械臂手和高速相机的测试,其成本更低。而且,本方案无需手机root,因此更加接近用户手机状态,且方便与竞品对比。另外,本发明的测试过程中还可无缝对接google提供的抓取systrace工具,抓取流畅性相关日志,从而更便于研发解决问题。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明的一个实施例的测试应用流畅度的系统100的示意图;
图2示出了根据本发明一个实施例的移动终端200的结构框图;以及
图3示出了根据本发明一个实施例的计算设备300的结构框图。
图4示出了根据本发明一个实施例的测试应用流畅度的方法400的流程图;以及
图5示出了根据本发明另一个实施例的测试应用流畅度的方法500的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的测试应用流畅度的系统100的示意图。如图1所示,测试应用流畅度的系统100中包括移动终端200和计算设备300。其中,移动终端200与计算设备300通信连接,移动终端200可以是智能手机、平板电脑等,但不限于此。应当指出,图1中的测试应用流畅度的系统100仅是示例性的,在具体的实践情况中,系统100中可以有不同数量的移动终端200和计算设备300,本发明对系统100中所包括的移动终端和网络服务器的数量不做限制。
另外,本发明的移动终端200中存储有测试应用流畅性的测试脚本,该测试脚本包括多个脚本单元,每个脚本单元对应一种测试类别,并适于对应用界面执行该测试类别对应的滑动操作。例如,测试类别包括向上滑动的测试、向下滑动的测试、向左滑动的测试和向右滑动的测试。其中,向上滑动的测试对应向上滑动的脚本单元和向上滑动的操作;向下滑动的测试对应向下滑动的脚本单元和向下滑动的操作;其他依此类推。当然,向左滑动和向右滑动,也可以设置为向左切换页面和向右切换页面,本发明对此不作限制。另外,还可以设置连续放大的脚本单元,对应连续放大测试和连续放大操作;或者设置连续缩小的脚本单元,对应连续缩小测试和连续缩小操作。
另外,测试脚本可以由计算设备300生成,具体地,计算设备300通过将固定的测试步骤编写成脚本,打成可执行文件后导入到移动终端200中,然后使用adb来启动传参设置步骤执行次数,也就是向移动终端300发送脚本执行指令。例如:需要测试移动终端中各列表滑动的性能(如微博信息滑动、微信朋友圈滑动和淘宝商品信息滑动等),只需将滑动动作编写成可执行的文件,导入移动终端中,且可由外部传参设定滑动次数。
移动终端200收到脚本执行指令后,即可自动开始执行对应的脚本单元,如执行预定测试次数的滑动操作。移动终端在启动测试过程中,可以通过系统自带的一些方法抓取流畅度数据,如获取到相应的帧信号参数,而计算设备300就可以通过数据网络获取到这些参数进行分析,以得到应用的流畅性。这样做可以确保自动化执行是在移动终端200本地进行,而不是通过计算设备300来控制,保证每次执行的稳定性,确保得到的流畅性数据只和移动终端的性能相关。另外计算设备300还可通过可传参控制操作步骤,以自由设定测试长度。
图2示出了根据本发明一个实施例的移动终端200的结构框图。移动终端200可以包括存储器接口202、一个或多个数据处理器、图像处理器和/或中央处理单元204,以及外围接口206。
存储器接口202、一个或多个处理器204和/或外围接口206既可以是分立元件,也可以集成在一个或多个集成电路中。在移动终端200中,各种元件可以通过一条或多条通信总线或信号线来耦合。传感器、设备和子系统可以耦合到外围接口206,以便帮助实现多种功能。
例如,运动传感器210、光线传感器212和距离传感器214可以耦合到外围接口206,以方便定向、照明和测距等功能。其他传感器216同样可以与外围接口206相连,例如定位系统(例如GPS接收机)、温度传感器、生物测定传感器或其他感测设备,由此可以帮助实施相关的功能。
相机子系统220和光学传感器222可以用于方便诸如记录照片和视频剪辑的相机功能的实现,其中所述相机子系统和光学传感器例如可以是电荷耦合器件(CCD)或互补金属氧化物半导体(厘米OS)光学传感器。可以通过一个或多个无线通信子系统224来帮助实现通信功能,其中无线通信子系统可以包括射频接收机和发射机和/或光(例如红外)接收机和发射机。无线通信子系统224的特定设计和实施方式可以取决于移动终端800所支持的一个或多个通信网络。例如,移动终端800可以包括被设计成支持LTE、3G、GSM网络、GPRS网络、EDGE网络、Wi-Fi或WiMax网络以及BlueboothTM网络的通信子系统224。
音频子系统226可以与扬声器228以及麦克风230相耦合,以便帮助实施启用语音的功能,例如语音识别、语音复制、数字记录和电话功能。I/O子系统240可以包括触摸屏控制器242和/或一个或多个其他输入控制器244。触摸屏控制器242可以耦合到触摸屏246。举例来说,该触摸屏246和触摸屏控制器242可以使用多种触摸感测技术中的任何一种来检测与之进行的接触和移动或是暂停,其中感测技术包括但不局限于电容性、电阻性、红外和表面声波技术。一个或多个其他输入控制器244可以耦合到其他输入/控制设备248,例如一个或多个按钮、摇杆开关、拇指旋轮、红外端口、USB端口、和/或指示笔之类的指点设备。所述一个或多个按钮(未显示)可以包括用于控制扬声器228和/或麦克风230音量的向上/向下按钮。
存储器接口202可以与存储器250相耦合。该存储器250可以包括高速随机存取存储器和/或非易失性存储器,例如一个或多个磁盘存储设备,一个或多个光学存储设备,和/或闪存存储器(例如NAND,NOR)。存储器850可以存储操作系统272,例如Android、iOS或是Windows Phone之类的操作系统。该操作系统272可以包括用于处理基本系统服务以及执行依赖于硬件的任务的指令。存储器250还可以存储一个或多个程序274。在移动设备运行时,会从存储器250中加载操作系统272,并且由处理器204执行。程序274在运行时,也会从存储器250中加载,并由处理器204执行。程序274运行在操作系统之上,利用操作系统以及底层硬件提供的接口实现各种用户期望的功能,如即时通信、网页浏览、图片管理等。程序274可以是独立于操作系统提供的,也可以是操作系统自带的。另外,程序274被安装到移动终端200中时,也可以向操作系统添加驱动模块。程序274可以布置为在操作系统上由一个或多个处理器204执行相关的指令。在一些实施例中,移动终端200被配置为执行根据本发明的测试应用流畅度的方法400。其中,移动终端200的一个或多个程序274包括用于执行根据本发明的测试应用流畅度的方法400的指令。
图3是示例计算设备300的框图。在基本的配置302中,计算设备300典型地包括系统存储器306和一个或者多个处理器304。存储器总线308可以用于在处理器304和系统存储器306之间的通信。
取决于期望的配置,处理器304可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器304可以包括诸如一级高速缓存310和二级高速缓存312之类的一个或者多个级别的高速缓存、处理器核心314和寄存器316。示例的处理器核心314可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器918可以与处理器304一起使用,或者在一些实现中,存储器控制器918可以是处理器304的一个内部部分。
取决于期望的配置,系统存储器306可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器306可以包括操作系统320、一个或者多个程序322以及程序数据324。在一些实施方式中,程序322可以布置为在操作系统上由一个或多个处理器304利用程序数据324执行指令。
计算设备300还可以包括有助于从各种接口设备(例如,输出设备342、外设接口344和通信设备346)到基本配置302经由总线/接口控制器330的通信的接口总线340。示例的输出设备342包括图形处理单元348和音频处理单元350。它们可以被配置为有助于经由一个或者多个A/V端口352与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口344可以包括串行接口控制器354和并行接口控制器356,它们可以被配置为有助于经由一个或者多个I/O端口358和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备346可以包括网络控制器360,其可以被布置为便于经由一个或者多个通信端口364与一个或者多个其他计算设备362通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
计算设备300可以实现为服务器,例如文件服务器、数据库服务器、应用程序服务器和WEB服务器等,也可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、个人数字助理(PDA)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。计算设备300还可以实现为包括桌面计算机和笔记本计算机配置的个人计算机。
在一些实施例中,计算设备300实现为网络服务器,并被配置为执行根据本发明的测试应用流畅度的方法500。其中,计算设备300的一个或多个程序322包括用于执行根据本发明的测试应用流畅度的方法500的指令。
图4示出了根据本发明一个实施例的测试应用流畅度的方法400的流程图,该方法适于在移动终端执行,如在如上所述的移动终端200中执行。如图4所示,该方法始于步骤S420。
在步骤S420中,接收计算设备下发的脚本执行指令,该脚本执行指令包括测试类别和测试次数。
其中,测试类别如向上滑动、向下滑动、向左切换、向右切换到等。测试次数可以是滑动次数,当然如果页面切换操作的话,则可以是切换次数。另外,脚本执行指令后还可以包括滑动时间间隔,即每隔多长时间滑动一次;以及滑动距离,即每次执行滑动操作时滑动多长距离。
随后,在步骤S440中,确定测试脚本中与该测试类别对应的脚本单元,启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作,并获取该应用的应用包名。
如移动终端中位于前台的应用为微信,移动终端接到该脚本执行指令后解析出测试类别为向上滑动,测试次数为100次,滑动事件间隔为4ms,则开始执行测试操作,即每隔4ms向上滑动一次,共滑动100次。
随后,在步骤S460中,获取测试过程中的连续跳帧数目和每帧图像的绘制时间。
具体地,可以通过dumpsys gfxinfo packagename reset方法获取到每帧的绘制具体时间信息,如每隔1s获取一次;同时监控logcat中Choreographer类的Skipped帧数,得到连续跳帧数目SkippedCount。当测试脚本运行结束后,则停止获取。
随后,在步骤S480中,将应用包名、连续跳帧数目和每帧图像的绘制时间发送给计算设备,并由计算设备根据每帧图像的绘制时间计算绘制时间的流畅性参数,以及根据连续跳帧数目计算跳帧次数,并根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。
其中,绘制时间的流畅性参数包括以下参数中的至少一种:绘制时间的标准差σ、绘制时间的第p百分位数、绘制最慢的m帧图像的平均绘制时间。其中,标准差即为所有绘制时间的标准差,其公式为其中xi为第i帧图像的绘制时间。绘制时间的第p百分位数,即将所有绘制时间从小到大排列时处于p%位置的值。根据一个实施例,p=90%,也就是将所有绘制时间从小到大排列时处于90%位置的绘制时间值90th Percentile;m=10,也就是绘制最慢的10帧图像的平均绘制时间值Top 10thaverage。当然,这些只是示例性说明,也可以选择其他数值,本发明对此不作限制。
另外,跳帧次数的初始值为0,根据连续跳帧数目计算跳帧次数的步骤包括:分别获取测试过程中的多次连续跳帧数目,若某次连续跳帧数目大于标准值,则将跳帧次数加1。也就是,整个绘制过程中会有多帧图像跳帧,若连续几帧跳帧,则统计这次的连续跳帧数目,若该数目大于标准值,则将跳帧次数加。其中,标准值可以根据需要进行设定,本发明对此不作限制。另外,还可以对比某应用的新旧两个版本的跳帧次数,哪一版的跳帧次数大,则说明该版本流畅性偏低。
以上几个参数都可作为流畅度的判断标准,如果连续跳帧数目大于标准值的次数越多则越不流畅;标准差值越大则表示绘制性能越不稳定和越不流畅。90th Percentile和Top 10th average的差值则可以具体展现出不稳定的幅度,差值越大越不流畅。
根据一个实施例,还可以包括抓取测试过程中的流畅性相关日志的步骤,以便研发人员分析解决问题,该日志可在测试过程中通过调用安卓系统自带的systrace.py方法抓取。本方案中可以使用python实现,因此可以很方便的直接使用systrace.py来抓取相关信息。
图5示出了根据本发明又一个实施例的测试应用流畅度的方法500的流程图,该方法适于在计算设备执行,如在如上所述的计算设备300中执行。如图5所示,该方法始于步骤S520。
在步骤S520中,向移动终端发送脚本执行指令,该脚本执行指令包括测试类别和测试次数,并由移动终端确定与该测试类别对应的脚本单元,以及启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作。关于步骤S520,其具体内容已在步骤S420中说明,在此不再赘述。
随后,在步骤S540中,接收移动终端在启动测试后所发送的应用包名、连续跳帧数目和每帧图像的绘制时间。如步骤S420-步骤S480所述,移动终端启动测试操作时,会获取到应用的包名,以及测试过程中的连续跳帧数目和每帧图像的绘制时间,并将获取到的应用包名、连续跳帧数目和每帧图像的绘制时间发送给计算设备。
随后,在步骤S560中,根据每帧图像的绘制时间计算绘制时间的流畅性参数,并根据连续跳帧数目计算跳帧次数。随后,在步骤S580中,根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。这两步的具体执行过程可以参考步骤S480的描述,这里不再赘述。
关于方法500,其具体细节已在方法400中详细说明,这里不再赘述。
本发明中PC端启动测试方法的部分代码如下:
根据本发明的技术方案,能够更加直观准确的度量流畅性能,而且将流畅性测试步骤在移动终端中自动化,确保做竞品对比时操作一致。同时相比机械臂手和高速相机的测试,其成本更低。而且,本方案无需手机root,因此更加接近用户手机状态,且方便与竞品对比。另外,本发明的测试过程中还可无缝对接google提供的抓取systrace工具,抓取流畅性相关日志,从而更便于研发解决问题。
A5、如A1所述的方法,其中,所述每帧图像的绘制时间适于通过dumpsys gfxinfopackagename reset方法获取,所述连续跳帧数目适于通过logcat中的Choreographer类获取。
A6、如A1所述的方法,其中,所述滑动操作包括向上滑动、向下滑动、向左滑动和向右滑动中的至少一种,所述测试次数包括滑动次数。
B10、如B9所述的方法,其中,所述流畅性参数包括以下参数中的至少一种:绘制时间的标准差σ;绘制时间的第p百分位数,即将所有绘制时间从小到大排列时处于p%位置的值;绘制最慢的m帧图像的平均绘制时间。
B11、如B10所述的方法,其中,p=90%,m=10;标准差其中xi为第i帧图像的绘制时间。
B12、如B9所述的方法,其中,所述跳帧次数的初始值为0,所述根据连续跳帧数目计算跳帧次数的步骤包括:分别获取测试过程中的多次连续跳帧数目,若某次连续跳帧数目大于标准值,则将跳帧次数加1。
B13、如B9所述的方法,其中,所述每帧图像的绘制时间适于通过dumpsys gfxinfopackagename reset方法获取,所述连续跳帧数目适于通过logcat中的Choreographer类获取。
B14、如B9所述的方法,其中,所述滑动操作包括向上滑动、向下滑动、向左滑动和向右滑动中的至少一种,所述测试次数包括滑动次数。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组间可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组间组合成一个模块或单元或组间,以及此外可以把它们分成多个子模块或子单元或子组间。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如软盘、CD-ROM、硬盘驱动器或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的测试应用流畅度的方法。
以示例而非限制的方式,计算机可读介质包括计算机存储介质和通信介质。计算机可读介质包括计算机存储介质和通信介质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在计算机可读介质的范围之内。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (10)

1.一种测试应用流畅度的方法,适于在移动终端中执行,所述移动终端与计算设备通信连接,所述移动终端中存储有测试应用流畅性的测试脚本,所述测试脚本包括多个脚本单元,每个脚本单元对应一种测试类别,并适于对应用界面执行该测试类别对应的滑动操作,该方法包括步骤:
接收计算设备下发的脚本执行指令,所述脚本执行指令包括测试类别和测试次数;
确定测试脚本中与该测试类别对应的脚本单元,启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作,并获取该应用的应用包名;
获取测试过程中的连续跳帧数目和每帧图像的绘制时间;以及
将应用包名、连续跳帧数目和每帧图像的绘制时间发送给计算设备,并由计算设备根据每帧图像的绘制时间计算绘制时间的流畅性参数,以及根据连续跳帧数目计算跳帧次数,并根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。
2.如权利要求1所述的方法,其中,所述流畅性参数包括以下至少一种:
绘制时间的标准差σ;
绘制时间的第p百分位数,即将所有绘制时间从小到大排列时处于p%位置的值;
绘制最慢的m帧图像的平均绘制时间。
3.如权利要求2所述的方法,其中,p=90%,m=10;标准差其中xi为第i帧图像的绘制时间。
4.如权利要求1所述的方法,其中,所述跳帧次数的初始值为0,所述根据连续跳帧数目计算跳帧次数的步骤包括:
分别获取测试过程中的多次连续跳帧数目,若某次连续跳帧数目大于标准值,则将跳帧次数加1。
5.一种移动终端,包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求1至4所述的方法中的任一方法的指令。
6.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由移动终端执行时,使得所述移动终端执行根据权利要求1至4所述的方法中的任一方法。
7.一种测试应用流畅度的方法,适于在计算设备中执行,所述计算设备与移动终端与通信连接,所述移动终端中存储有测试应用流畅性的测试脚本,所述测试脚本包括多个脚本单元,每个脚本单元对应一种测试类别,并适于对应用界面执行该测试类别对应的滑动操作,该方法包括步骤:
向移动终端发送脚本执行指令,所述脚本执行指令包括测试类别和测试次数,并由所述移动终端确定与该测试类别对应的脚本单元,以及启动该脚本单元对位于前台的应用执行对应测试次数的滑动操作;
接收移动终端在启动测试后所发送的应用包名、连续跳帧数目和每帧图像的绘制时间;
根据每帧图像的绘制时间计算绘制时间的流畅性参数,并根据连续跳帧数目计算跳帧次数;以及
根据绘制时间的流畅性参数和跳帧次数判断该应用包名所对应的应用的流畅度。
8.一种计算设备,包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求7所述的方法中的指令。
9.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据权利要求7所述的方法。
10.一种测试应用流畅度的系统,包括如权利要求5所述的移动终端,以及如权利要求8所述的计算设备。
CN201710796246.8A 2017-09-06 2017-09-06 一种测试应用流畅度的方法、移动终端和计算设备 Active CN107656866B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710796246.8A CN107656866B (zh) 2017-09-06 2017-09-06 一种测试应用流畅度的方法、移动终端和计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710796246.8A CN107656866B (zh) 2017-09-06 2017-09-06 一种测试应用流畅度的方法、移动终端和计算设备

Publications (2)

Publication Number Publication Date
CN107656866A true CN107656866A (zh) 2018-02-02
CN107656866B CN107656866B (zh) 2020-11-27

Family

ID=61129154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710796246.8A Active CN107656866B (zh) 2017-09-06 2017-09-06 一种测试应用流畅度的方法、移动终端和计算设备

Country Status (1)

Country Link
CN (1) CN107656866B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144858A (zh) * 2018-08-02 2019-01-04 腾讯科技(北京)有限公司 流畅度检测方法、装置、计算设备及存储介质
CN111026657A (zh) * 2019-12-02 2020-04-17 海南车智易通信息技术有限公司 对移动终端中的应用进行测试的方法、计算设备及介质
CN111858272A (zh) * 2020-06-29 2020-10-30 深圳优地科技有限公司 判断程序执行延迟方法、装置及终端设备
CN111901471A (zh) * 2020-07-06 2020-11-06 珠海世纪鼎利科技股份有限公司 针对非root安卓手机的路测系统及方法
CN113419929A (zh) * 2020-03-17 2021-09-21 华为技术有限公司 测试动画效果流畅性的方法及设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559130A (zh) * 2013-11-01 2014-02-05 百度在线网络技术(北京)有限公司 浏览器流畅度的测试方法和装置
CN104021067A (zh) * 2014-05-28 2014-09-03 广东欧珀移动通信有限公司 移动终端的滑动性能检测方法、装置及移动终端
CN105095078A (zh) * 2015-07-22 2015-11-25 厦门美图移动科技有限公司 一种系统自动化测试设备、方法和计算设备
CN105320584A (zh) * 2015-03-31 2016-02-10 维沃移动通信有限公司 一种终端流畅度的测试方法及其终端
CN105446845A (zh) * 2015-11-24 2016-03-30 成都奇鲁科技有限公司 一种智能终端rom流畅度评测方法及系统
CN105468523A (zh) * 2015-11-20 2016-04-06 广东欧珀移动通信有限公司 一种移动终端响应时间的自动化测试方法及装置
CN105677573A (zh) * 2016-02-26 2016-06-15 厦门美图移动科技有限公司 一种卡顿检测方法、装置及计算设备
US20160196198A1 (en) * 2015-01-06 2016-07-07 Microsoft Technology Licensing, Llc Performance State Machine Control with Aggregation Insertion
CN106557426A (zh) * 2016-11-30 2017-04-05 武汉斗鱼网络科技有限公司 一种用于分析Android端应用运行流畅度的方法和系统
CN106802935A (zh) * 2016-12-29 2017-06-06 腾讯科技(深圳)有限公司 一种页面流畅度的测试方法和装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559130A (zh) * 2013-11-01 2014-02-05 百度在线网络技术(北京)有限公司 浏览器流畅度的测试方法和装置
CN104021067A (zh) * 2014-05-28 2014-09-03 广东欧珀移动通信有限公司 移动终端的滑动性能检测方法、装置及移动终端
US20160196198A1 (en) * 2015-01-06 2016-07-07 Microsoft Technology Licensing, Llc Performance State Machine Control with Aggregation Insertion
CN105320584A (zh) * 2015-03-31 2016-02-10 维沃移动通信有限公司 一种终端流畅度的测试方法及其终端
CN105095078A (zh) * 2015-07-22 2015-11-25 厦门美图移动科技有限公司 一种系统自动化测试设备、方法和计算设备
CN105468523A (zh) * 2015-11-20 2016-04-06 广东欧珀移动通信有限公司 一种移动终端响应时间的自动化测试方法及装置
CN105446845A (zh) * 2015-11-24 2016-03-30 成都奇鲁科技有限公司 一种智能终端rom流畅度评测方法及系统
CN105677573A (zh) * 2016-02-26 2016-06-15 厦门美图移动科技有限公司 一种卡顿检测方法、装置及计算设备
CN106557426A (zh) * 2016-11-30 2017-04-05 武汉斗鱼网络科技有限公司 一种用于分析Android端应用运行流畅度的方法和系统
CN106802935A (zh) * 2016-12-29 2017-06-06 腾讯科技(深圳)有限公司 一种页面流畅度的测试方法和装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144858A (zh) * 2018-08-02 2019-01-04 腾讯科技(北京)有限公司 流畅度检测方法、装置、计算设备及存储介质
CN109144858B (zh) * 2018-08-02 2022-02-25 腾讯科技(北京)有限公司 流畅度检测方法、装置、计算设备及存储介质
CN111026657A (zh) * 2019-12-02 2020-04-17 海南车智易通信息技术有限公司 对移动终端中的应用进行测试的方法、计算设备及介质
CN111026657B (zh) * 2019-12-02 2023-05-26 海南车智易通信息技术有限公司 对移动终端中的应用进行测试的方法、计算设备及介质
CN113419929A (zh) * 2020-03-17 2021-09-21 华为技术有限公司 测试动画效果流畅性的方法及设备
CN113419929B (zh) * 2020-03-17 2022-11-11 华为技术有限公司 测试动画效果流畅性的方法及设备
CN111858272A (zh) * 2020-06-29 2020-10-30 深圳优地科技有限公司 判断程序执行延迟方法、装置及终端设备
CN111858272B (zh) * 2020-06-29 2023-07-14 深圳优地科技有限公司 判断程序执行延迟方法、装置及终端设备
CN111901471A (zh) * 2020-07-06 2020-11-06 珠海世纪鼎利科技股份有限公司 针对非root安卓手机的路测系统及方法

Also Published As

Publication number Publication date
CN107656866B (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
US10929632B2 (en) Fingerprint information processing method and electronic device supporting the same
CN107656866A (zh) 一种测试应用流畅度的方法、移动终端和计算设备
US10068134B2 (en) Identification of objects in a scene using gaze tracking techniques
CN108463832B (zh) 电子设备和基于硬件诊断结果的过程执行方法
KR102344045B1 (ko) 화면을 표시하는 전자 장치 및 그 제어 방법
CN115097981B (zh) 处理内容的方法及其电子设备
CN107329750A (zh) 应用程序中广告页面的识别方法、跳转方法及移动终端
US20160132866A1 (en) Device, system, and method for creating virtual credit card
US10558354B2 (en) Method for providing content search interface and electronic device for supporting the same
CN105955973B (zh) 用户信息处理方法和支持该方法的电子设备
US10503390B2 (en) Electronic device and photographing method
KR102337509B1 (ko) 컨텐츠 제공 방법 및 그 전자 장치
KR102379171B1 (ko) 전자 장치 및 그의 영상 표시 방법
US20120260202A1 (en) Customized launching of applications
CN106126424B (zh) 一种脚本可视化的自动化测试方法、装置和移动终端
CN104508602B (zh) 尤其与触摸手势偏移有关的方法、存储介质和系统
KR20160091121A (ko) 화면 구성 방법, 전자 장치 및 저장 매체
CN105975391B (zh) 一种重启测试方法、设备和移动终端
CN107943683A (zh) 一种测试脚本生成方法、装置、电子设备及存储介质
CN106528163B (zh) 一种页面切换方法和装置
CN105094465B (zh) 环境光测量方法及装置
US20150007067A1 (en) Method and system for generating a user interface
CN109241437A (zh) 一种广告识别模型的生成方法、广告识别方法及系统
CN107153546A (zh) 一种视频播放方法及移动设备
CN106484614A (zh) 一种核对图片处理效果的方法、装置及移动终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20221227

Address after: 2225, floor 19, No. 19, Madian East Road, Haidian District, Beijing 100089

Patentee after: BEIJING NORTH-STAR TECHNOLOGY DEVELOPMENT Co.,Ltd.

Address before: 361009 112a, Pioneer Building, Pioneer Park, torch hi tech Zone, Xiamen City, Fujian Province

Patentee before: Xiamen Meitu Mobile Technology Co.,Ltd.

TR01 Transfer of patent right