CN111506488A - 一种应用页面响应测试方法及装置 - Google Patents
一种应用页面响应测试方法及装置 Download PDFInfo
- Publication number
- CN111506488A CN111506488A CN201910090094.9A CN201910090094A CN111506488A CN 111506488 A CN111506488 A CN 111506488A CN 201910090094 A CN201910090094 A CN 201910090094A CN 111506488 A CN111506488 A CN 111506488A
- Authority
- CN
- China
- Prior art keywords
- page
- event
- response
- test
- 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.)
- Granted
Links
- 230000004044 response Effects 0.000 title claims abstract description 140
- 238000010998 test method Methods 0.000 title description 6
- 238000012360 testing method Methods 0.000 claims abstract description 185
- 238000000034 method Methods 0.000 claims description 45
- 238000003860 storage Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 238000001545 Page's trend test Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种应用页面响应测试方法及装置,涉及应用自动化测试技术领域,主要目的在于测试应用执行页面滑动事件时所导致的跟手延迟时间,提升测试精度。本发明主要的技术方案为:判断测试页面的当前展示状态是否稳定;若稳定,则获取系统缓存的所述测试页面的多帧稳定展示画面;触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间;获取系统缓存的所述测试页面响应于所述页面滑动事件的多帧事件响应展示画面;基于多帧稳定展示画面和多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间;将所述响应时间与所述触发起始时间的差值确定为所述测试页面的跟手延迟时间。
Description
技术领域
本发明涉及应用测试技术领域,尤其涉及一种应用页面响应测试方法及装置。
背景技术
应用软件页面的触控延迟是指应用页面(或应用界面)在接收到用户的触控操作后,经过应用软件的处理将该触控操作展示在页面中,定义该过程所需的时间为触控延迟。触控延迟的性能会直接影响到用户使用该软件时的操作流畅性。
目前,测试触控延迟性能常用的方式是采用高速摄像记录的方法测试,即,通过高速摄像设备记录应用界面滑动的全过程,之后对所录制的视频进行逐帧过滤,获取手指触控屏幕的开始时间点和应用界面展示用户操作而出现变化的时间点,计算两者差值得到触控延迟性能的结果。然而这种方式不仅需要高性能的高速摄像设备支持,对于拍摄后的画面处理也需要高精度的分析以确保结果的准确性,尤其是在处理手指触控屏幕的过程中,现有的自动化测试技术很难确定手指触控屏幕的开始时间点,只能通过人为观察来确定,导致现有的触控延迟性能测试存在较大误差,且成本过高的问题。
发明内容
鉴于上述问题,本发明提出了一种应用页面响应测试方法及装置,主要目的在于测试应用在执行页面滑动事件时所导致的应用页面跟手延迟时间,提升测试精度。
为达到上述目的,本发明主要提供如下技术方案:
一方面,本发明提供一种应用页面响应测试方法,具体包括:
判断测试页面的当前展示状态是否稳定;
若稳定,则获取系统缓存的所述测试页面的多帧稳定展示画面;
触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间;
获取系统缓存的所述测试页面响应于所述页面滑动事件的多帧事件响应展示画面;
基于多帧稳定展示画面和多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间;
将所述响应时间与所述触发起始时间的差值确定为所述测试页面的跟手延迟时间。
另一方面,本发明提供一种应用页面响应测试装置,具体包括:
页面状态判断单元,用于判断测试页面的当前展示状态是否稳定;
稳定画面获取单元,用于当所述页面状态判断单元确定测试页面稳定时,获取系统缓存的所述测试页面的多帧稳定展示画面;
起始时间获取单元,用于触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间;
响应画面获取单元,用于获取系统缓存的所述测试页面响应于所述页面滑动事件的多帧事件响应展示画面;
响应时间获取单元,用于基于多帧稳定展示画面和多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间;
延迟时间确定单元,用于将所述响应时间与所述触发起始时间的差值确定为所述测试页面的跟手延迟时间。
另一方面,本发明提供一种处理器,所述处理器用于运行计算机程序,其中,所述计算机程序运行时执行上述的应用页面响应测试方法。
借由上述技术方案,本发明提供的一种应用页面响应测试方法及装置,主要用于对操作系统中运行的待测试应用的页面响应速度进行测试,即对页面跟手延迟的时间进行测试,该测试过程是在展示状态稳定的测试页面中,记录稳定展示画面,并触发页面滑动事件,获取该页面滑动事件的触发起始时间,再利用系统缓存的稳定展示画面与事件响应展示画面确定该页面滑动事件的响应时间,将响应时间与触发起始时间的差值确定为页面的跟手延迟时间。可见,本发明所测试的跟手延迟时间是针对应用的页面测试从接收到该页面滑动事件至最终显示页面变化的一段时间,而该跟手延迟时间是基于系统缓存的页面在该过程中所展示的画面所确定的,不依赖于高速相机,因此,相对于现有的测试方法,本发明能够有效地控制测试成本,同时,由于获取的是系统缓存的画面,也可以测试出该应用与系统的适配程度,从而评价该应用针对该系统的优化程度,使得该测试具有更强的针对性,而由于系统所记录的时间精度更高,也该测试能够取得更加精确的测试结果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提出的一种应用页面响应测试方法的流程图;
图2示出了本发明实施例提出的另一种应用页面响应测试方法的流程图;
图3示出了本发明实施例提出的一种应用页面响应测试装置的组成框图;
图4示出了本发明实施例提出的另一种应用页面响应测试装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种应用页面响应测试方法,主要用于测试在智能设备的操作系统中运行的应用程序页面的跟手延迟性能,以判断该应用程序在不同操作系统或者在同一操作系统的不同版本运行时页面对于用户手势操作的响应速度,并且也可以测试该应用程序针对同一操作系统进行页面响应速度优化的结果,以评价应用优化的实际效果。
本发明中所测试的应用页面亦可理解为在智能设备的显示屏展示的应用界面,即用户所看到的应用页面,具体测试的步骤如图1所示,该方法包括:
步骤101、判断测试页面的当前展示状态是否稳定。
本发明的测试方法主要目的是为了测评应用程序在人机交互过程中页面响应用户操作的速度。因此,该测试需要在一个没有干扰操作的应用页面中进行,以确保测试结果的准确。为此,在执行本发明的测试方法前,需要先确定该应用的测试页面,即判断该应用所展示的页面是否处于稳定的展示状态,若稳定则执行步骤102,若不稳定,则等待测试页面的当前展示状态稳定后再执行步骤102。
在实际应用中,该测试页面的确定可以是从应用程序的页面中,人工选择的一个页面,也可以是通过系统自动选择的。一般地,在进行应用页面的跟手延迟性能测试时,首先,测试页面需要为状态稳定的页面,即,系统不需要绘制该页面的新的页面画面进行展示,例如,该测试页面中不存在动态变化的控件,其次,该测试页面用户能够通过屏幕进行触控操作。
步骤102、获取系统缓存的测试页面的多帧稳定展示画面。
其中,系统缓存的测试页面是指由操作系统按照预设的帧率所缓存的多帧测试页面的展示画面,当测试页面当前的展示状态稳定时,这些所缓存的多个展示画面都是稳定展示画面,操作系统在缓存展示画面时会缓存该展示画面的时间戳。
步骤103、触发测试页面的页面滑动事件,获取该页面滑动事件的触发起始时间。
其中,页面滑动事件是指能够触发测试页面的页面内容产生变化的事件,即该事件会使系统针对该测试页面绘制新的页面画面进行展示。在本实施例中,页面滑动事件的触发可以是人工通过触控智能设备的屏幕实现,如手指的滑动操作等;也可以是由操作系统中设置的事件指令触发,如在安卓系统的中通过sendevent、getevent指令实现模拟的页面滑动事件。
本步骤中不具体限定该页面滑动事件的触发方式,需要说明的是,本步骤所获取的触发起始时间是指操作系统接收到页面滑动事件的时间。对于人工触控操作,触发起始时间并不是用户的手指触控到屏幕页面的时间,由于页面滑动事件从屏幕上的传感器传递到操作系统也需要一定的时间,即设备硬件的响应时间,因此,触发起始时间在该情况下,是用户触控屏幕的时间与设备硬件的响应时间的差值,由此可见,通过高速相机测试应用页面的跟手延迟性能除了确定人工触控屏幕的时间外,还需要准确地获取该应用程序所在智能设备的硬件参数,再计算出触发起始时间。而对于使用操作系统中设置的事件指令模拟触发页面滑动事件的方式,由于可以通过事件指令准确地读取操作系统接收该页面滑动事件的时间,而且操作系统中的时间精度一般也会高于高速相机的拍摄精度,因此,通过该方式测试的跟手延迟性能的准确性要高于前者。
步骤104、获取系统缓存的测试页面响应于页面滑动事件的多帧事件响应展示画面。
该步骤与步骤102类似,区别在于步骤102所获取的是测试页面在稳定展示状态下的多帧稳定展示画面,而本步骤则获取的是页面滑动事件被触发后,测试页面响应该页面滑动事件的多帧事件响应展示画面,即获取测试页面基于页面滑动事件由稳定到变化这一过程中所产生的多帧展示画面。
需要说明的是,本步骤与步骤102所获取的多帧事件响应展示画面与多帧稳定展示画面中,每一帧展示画面都记录有展示画面的时间戳,即在智能设备上展示该帧画面时的时间。
步骤105、基于多帧稳定展示画面和多帧事件响应展示画面,确定测试页面响应页面滑动事件的响应时间。
该步骤是通过对比多帧稳定展示画面和多帧事件响应展示画面中的画面内容,确定出多帧事件响应展示画面中的第一幅响应页面滑动事件的画面,将该帧事件响应展示画面对应的时间戳确定为响应时间。也就是说,本步骤是根据多帧稳定展示画面中的画面内容,在多帧事件响应展示画面中进行对比,查找出画面内容发生改变的最早一帧事件响应展示画面,以该帧画面的时间戳确定为页面滑动事件的响应时间。
步骤106、将响应时间与触发起始时间的差值确定为测试页面的跟手延迟时间。
本步骤是将步骤105得到的响应时间与步骤103得到的触发起始时间进行差值计算,以确定测试页面针对页面滑动事件的跟手延迟时间。可见,该跟手延迟时间体现的是测试页面从接收页面滑动事件到展示出该页面滑动事件所对应的画面这一过程所需的时间,该跟手延迟时间的值越小,则证明该应用在当前操作系统中执行页面操作的响应速率就越快,对于用户而言,越快的响应速率能够让用户感受到的操作同步性就越强,即操作越流畅越好。
通过上述实施例中的具体实现方式可以看出,本发明提出的应用页面响应测试方法,所测试的是在操作系统中执行应用程序的页面操作所需的响应时间,也就是测试执行页面滑动事件而导致的页面跟手延迟时间,其不含有硬件设备所产生的响应时间。因此,在本实施例中,所获取的是操作系统接收到页面滑动事件时的系统触发起始时间,以及操作系统展示到屏幕中的页面变化的系统响应时间,通过计算系统响应时间与系统触发起始时间的差值来得到该应用程序在该系统中的页面跟手延迟时间。对比现有采用高速相机拍摄屏幕画面的测试方式,本实施例并不完全依赖高速相机,从而可以有效降低测试成本,并且,通过操作系统获取的时间准确性更高,使得测试结果具有更高的精度。同时,本实施例是针对操作系统中运行的应用程序进行的测试,其具有更高的测试针对性,可以为应用程序研发人员提供针对某一操作系统的页面响应数据,以帮助研发人员更好地优化应用程序与操作系统之间的适配性,从而提升应用程序在操作系统中的页面响应时间,提高应用程序的操作体验。
进一步的,由于本发明所提出的测试应用页面的响应时间的方案,能够测试该应用程序与操作系统的适配性,因此,在实际应用中主要使用操作系统中模拟的页面滑动事件代替人工触发页面滑动事件的操作,如此可以省去使用高速相机确定页面滑动事件的触发起始时间,不仅节省了测试成本,还能够提高测试的精度。以下实施例将以运行在安卓操作系统中的应用程序为例,详细说明本发明的应用页面响应测试方法的具体步骤,如图2所示,该方法包括:
步骤201、从当前展示状态稳定的测试页面中获取系统缓存的多帧稳定展示画面。
首先,本步骤需要确定该应用的测试页面的当前展示状态是稳定的,为此,本实施例的具体实现方式是检测该测试页面中是否存在动态变化的控件,其中,动态变化的控件是指在页面中设置的能够让页面元素的位置、形状等属性发生动态变化的控件,如弹窗、页面动画等,该控件的存在会使得测试页面的展示内容实时改变,因此,当测试页面中存在动态变化的控件时,就认为该测试页面的当前展示状态是不稳定的,只有在测试页面中不存在动态变化的控件时,测试页面才有可能处于稳定的展示状态。在确定测试页面中不存在动态变化的控件后,进一步判断测试页面所展示的页面内容在预设时间段内是否发生变化,若未变化,则确定该测试页面的当前展示状态为稳定。其中,预设时间段为自定义设置的经验值。若经过上述的测试发现当前测试页面的展示状态不稳定,则可以更换该应用程序的测试页面,或者等待一段时间后再判断该测试页面是否稳定。
在确定测试页面的当前展示状态稳定后,本步骤将获取系统缓存的该测试页面的多帧稳定展示画面。其中,本实施例应用了安卓操作系统中的日志缓存机制获取应用程序的展示画面,该日志缓存机制用于缓存操作系统当前正在运行并显示的应用程序的页面,通过该机制能够缓存128帧画面,即通过读取安卓系统中缓存日志,就能够获取到测试页面所展示的128帧画面。并且,每一帧画面都记录有对应的时间戳,即展示该帧画面的时间,需要说明的是,这128帧画面可以是连续缓存的,也可以是间隔缓存的,而间隔缓存的间隔时间可以根据需求自定义设置。
步骤202、触发测试页面的页面滑动事件,获取该页面滑动事件的触发起始时间。
在安卓操作系统中,能够通过发送预置的事件发送指令来模拟触发测试页面的页面滑动事件,并且,通过预置的事件接收指令监控应用程序接收到该页面滑动事件,即测试页面响应该页面滑动事件,记录该时刻的时间,以此作为该页面滑动事件的触发起始时间。
具体的,使用安卓操作系统中的sendevent命令作为预置的事件发送指令,使用getevent命令作为预置的事件接收指令。本步骤中,通过sendevent命令模拟触发用户在屏幕中执行页面滑动操作的全部指令,一般地,一个完整的页面滑动行为需要通过一个页面滑动事件触发并执行,而该页面滑动事件是由一组sendevent命令所构成的,每一条sendevent命令中包括页面滑动行为的执行对象滑动的坐标值(包括页面滑动的x轴与y轴的坐标值),以及同步指令,其中同步指令用于在使用getevent命令监控由sendevent命令触发的指令时进行事件的识别。
通过sendevent命令触发一个页面滑动事件的同时,操作系统会同时执行getevent命令监控应用程序所接收到的具有相同同步指令的事件信息(sendevent命令),由于页面滑动事件是一组sendevent命令,因此,操作系统监控页面滑动事件也是一组getevent命令,其中,每一条getevent命令监控得到的信息包括事件的标识信息,对应于同步指令,滑动操作的坐标值(包括页面滑动的x轴与y轴的坐标值),以及接收该条命令的时间戳。对于一个页面滑动行为,本步骤以所接收到的一组getevent命令中第一条监控得到的信息对应的时间戳为页面滑动事件的触发起始时间。
步骤203、获取系统缓存的测试页面响应于页面滑动事件的多帧事件响应展示画面。
本步骤是在步骤202获取到触发起始时间之后,再次读取操作系统缓存的展示画面,以确定测试页面响应于页面滑动事件的多帧事件响应展示画面。
在实际应用中,由于测试页面响应该页面滑动事件存在一定的时间差,因而,在确定页面滑动事件的触发起始时间后,会间隔一定的时间段再获取操作系统缓存的展示画面,即通过安卓操作系统中的日志缓存机制读取所缓存的128帧画面,使得在这128帧画面中存在响应于页面滑动事件的多帧事件响应展示画面,这些事件响应展示画面是指测试页面开始滑动的多帧展示画面。其中,该间隔的时间段为预设的经验值,需要根据不同的应用程序进行自定义设置。
步骤204、基于多帧稳定展示画面和多帧事件响应展示画面,确定测试页面响应页面滑动事件的响应时间。
本步骤的目的是要从步骤203所获取的多帧事件响应展示画面中确定出响应页面滑动事件的第一帧画面,即测试页面根据页面滑动事件开始滑动的第一帧画面。为此,本步骤利用了步骤201中所获取的多帧稳定展示画面与多帧事件响应展示画面进行比对,其具体过程如下:
第一,从多帧稳定展示画面中,获取最后一帧稳定展示画面。其中,最后一帧稳定展示画面是指画面的展示时间戳晚于其他多帧稳定展示画面的展示时间戳。
第二,从多帧事件响应展示画面中,查找最后一帧稳定展示画面。这里需要说明的是,由于多帧事件响应展示画面是经过一定时间间隔后所获取的,则在该时间间隔过程中,安卓操作系统的日志缓存机制是持续执行的,即操作系统会持续地缓存测试页面的画面,这128帧画面会不断更新,在缓存一帧新的画面时,会删除展示时间戳最早的一帧,那么,多帧稳定展示画面中的最后一帧稳定展示画面(128帧),将会根据时间的持续而不停的向前移动(当持续时间较长,新缓存的图像数量超过128帧时,该最后一帧稳定展示画面将会移除该缓存区域)。因此,在本步骤执行过程中,查找最后一帧稳定展示画面的结果存在两种可能,一种,是在多帧事件响应展示画面中能够查找到最后一帧稳定展示画面,此时将执行第三步;另一种,则是在多帧事件响应展示画面中查找不到最后一帧稳定展示画面,此时将执行第四步。
第三,将多帧事件响应展示画面中,展示时间戳晚于该最后一帧稳定展示画面且展示时间戳的差值最小的事件响应展示画面的展示时间戳确定为测试页面响应该页面滑动事件的响应时间。
具体的,该步骤是从多帧事件响应展示画面中以展示时间戳查找到多帧稳定展示画面中的最后一帧稳定展示画面,并从该帧画面后查找哪些画面是响应页面滑动事件的画面,即画面的内容与最后一帧稳定展示画面的内容不同,再在这些内容不同的画面中选择展示时间戳最早的一帧(即展示时间戳与最后一帧稳定展示画面的展示时间戳的差值最小的一帧画面),将该帧画面的展示时间戳确定为测试页面响应该页面滑动事件的响应时间。
第四,将多帧事件响应展示画面中,查找展示画面的内容与最后一帧稳定展示画面不同,且展示时间戳最早的一帧事件响应展示画面,将该帧事件响应展示画面的展示时间戳确定为测试页面响应该页面滑动事件的响应时间。
具体的,该步骤是在读取的128帧画面中不存在最后一帧稳定展示画面的情况下,对这128帧画面的画面内容逐一与最后一帧稳定展示画面的画面内容进行比对,查找响应页面滑动事件的画面,再根据这些画面的展示时间戳,确定最早一帧的展示时间戳为测试页面响应该页面滑动事件的响应时间。
需要说明的是,如果该步骤所确定的响应时间为多帧事件响应展示画面中的第一帧(即128帧画面中时间戳最早的一帧画面),那么,说明本次测试所设置的时间间隔过大,以致响应页面滑动事件的第一帧画面可能不在安卓操作系统所缓存的128帧画面中,而由此得到的测试结果可能是不准确的。因而,此时将提示“重新设定间隔时间并测试”,以确保能够获取到响应页面滑动事件的第一帧画面,得到准确的响应时间。
步骤205、将响应时间与触发起始时间的差值确定为测试页面的跟手延迟时间。
该步骤与图1所示的步骤106的内容相同,此处不再赘述。
基于上述图2所示的应用页面响应测试方法可以看出,基于安卓操作系统的应用程序,其跟手延迟时间的测试可以通过操作系统中预置的指令来模拟出用户在智能设备屏幕上的实际页面滑动操作,而模拟的页面滑动事件所获取到的触发起始时间与响应时间对比使用高速相机的方式具有更高的测量精度,同时通过操作系统模拟页面滑动事件也节省了配置高速相机的成本,从而降低测试成本。而在获取响应该模拟的页面滑动事件所产生的页面变化时,也是通过操作系统预置的指令实现,同样不需要高速相机,因此,本发明实施例在不使用高速相机时同样可以完成跟手延迟性能的测试,不仅可以有效控制测试成本,而且还可以提升测试的精度。
进一步的,作为对上述图1与图2所示方法的实现,本发明实施例提供了一种应用页面响应测试装置,主要用于测试应用在执行页面操作事件过程中所产生的跟手延迟时间,以此来评价该应用响应页面操作的实际性能。为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置如图3所示,具体包括:
页面状态判断单元31,用于判断测试页面的当前展示状态是否稳定;
稳定画面获取单元32,用于当所述页面状态判断单元31确定测试页面稳定时,获取系统缓存的所述测试页面的多帧稳定展示画面;
起始时间获取单元33,用于在所述页面状态判断单元31确定测试页面稳定后,触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间;
响应画面获取单元34,用于获取系统缓存的所述测试页面响应于所述页面滑动事件的多帧事件响应展示画面;
响应时间获取单元35,用于基于所述稳定画面获取单元32获取的多帧稳定展示画面和所述响应画面获取单元34获取的多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间;
延迟时间确定单元36,用于将所述响应时间获取单元35获取的响应时间与所述起始时间获取单元33获取的触发起始时间的差值确定为所述测试页面的跟手延迟时间。
进一步的,如图4所示,所述起始时间获取单元33包括:
滑动事件触发模块331,用于发送预置的事件发送指令作为触发所述测试页面的页面滑动事件;
起始时间确定模块332,用于当预置的事件接收指令监控到所述测试页面响应所述滑动事件触发模块331发送的事件发送指令时,将所述预置的事件接收指令监控到的所述测试页面响应所述页面滑动事件的时间,确定为页面滑动事件的触发起始时间。
进一步的,如图4所示,所述响应时间获取单元35包括:
获取模块351,用于从多帧稳定展示画面中,获取最后一帧稳定展示画面,所述最后一帧稳定展示画面的展示时间戳晚于所述多帧稳定展示画面中的其他稳定展示画面;
查找模块352,用于从所述多帧事件响应展示画面中,查找所述获取模块351获取的最后一帧稳定展示画面;
响应时间确定模块353,用于将所述多帧事件响应展示画面中,展示时间戳晚于所述查找模块352找到的最后一帧稳定展示画面且展示时间戳的差值最小的事件响应展示画面的展示时间戳确定为测试页面响应所述页面滑动事件的响应时间。
进一步的,如图4所示,所述页面状态判断单元31包括:
控件检测模块311,用于检测所述测试页面中是否存在动态变化的控件;
页面判断模块312,用于在控件检测模块311确定测试页面中不存在动态变化的控件时,判断所述测试页面所展示的页面内容在预设时间段内是否发生变化;
页面状态确定模块313,用于在页面判断模块312确定页面内容未变化时,确定所述测试页面的当前展示状态为稳定。
综上所述,本发明实施例所采用的应用页面响应测试方法及装置,用于测试应用自身响应页面操作事件的响应速度,特别是在操作系统中能够测试该应用与操作系统的适配程度,该测试中排除了应用所在智能设备产生的硬件延迟参数,对于向应用研发人员反馈应用页面的跟手延迟时间更具有针对性,并且通过本发明实施例可以看出,通过使用操作系统模拟出的页面滑动事件进行测试时,无需再使用高速相机,完全通过系统内置的控制指令来获取相关参数以计算跟手延迟时间,在降低测试成本的同时,还简化了测试过程,提升了测试结果的准确性。
进一步的,本发明实施例还提供了一种存储介质,该存储介质用于存储计算机程序,其中,所述计算机程序运行时控制所述存储介质所在设备执行上述的应用页面响应测试方法。
另外,本发明实施例还提供了一种电子设备,所述电子设备中包括处理器和存储器,所述处理器用于调用所述存储器中的程序指令,以执行上述的应用页面响应测试方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
此外,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种应用页面响应测试方法,其特征在于,所述方法包括:
判断测试页面的当前展示状态是否稳定;
若稳定,则获取系统缓存的所述测试页面的多帧稳定展示画面;
触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间;
获取系统缓存的所述测试页面响应于所述页面滑动事件的多帧事件响应展示画面;
基于多帧稳定展示画面和多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间;
将所述响应时间与所述触发起始时间的差值确定为所述测试页面的跟手延迟时间。
2.根据权利要求1所述的方法,其特征在于,所述触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间,具体包括:
发送预置的事件发送指令作为触发所述测试页面的页面滑动事件;
当预置的事件接收指令监控到所述测试页面响应所述事件发送指令,则将所述预置的事件接收指令监控到的所述测试页面响应所述页面滑动事件的时间,确定为页面滑动事件的触发起始时间。
3.根据权利要求1或2所述的方法,其特征在于,基于多帧稳定展示画面和多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间,具体包括:
从多帧稳定展示画面中,获取最后一帧稳定展示画面,所述最后一帧稳定展示画面的展示时间戳晚于所述多帧稳定展示画面中的其他稳定展示画面;
从所述多帧事件响应展示画面中,查找所述最后一帧稳定展示画面;
将所述多帧事件响应展示画面中,展示时间戳晚于所述最后一帧稳定展示画面且展示时间戳的差值最小的事件响应展示画面的展示时间戳确定为测试页面响应所述页面滑动事件的响应时间。
4.根据权利要求1或2所述的方法,其特征在于,判断测试页面的当前展示状态是否稳定,包括:
检测所述测试页面中是否存在动态变化的控件;
若不存在动态变化的控件,则判断所述测试页面所展示的页面内容在预设时间段内是否发生变化;
若未变化,则确定所述测试页面的当前展示状态为稳定。
5.一种应用页面响应测试装置,其特征在于,所述装置包括:
页面状态判断单元,用于判断测试页面的当前展示状态是否稳定;
稳定画面获取单元,用于当所述页面状态判断单元确定测试页面稳定时,获取系统缓存的所述测试页面的多帧稳定展示画面;
起始时间获取单元,用于触发所述测试页面的页面滑动事件,获取所述页面滑动事件的触发起始时间;
响应画面获取单元,用于获取系统缓存的所述测试页面响应于所述页面滑动事件的多帧事件响应展示画面;
响应时间获取单元,用于基于多帧稳定展示画面和多帧事件响应展示画面,确定所述测试页面响应所述页面滑动事件的响应时间;
延迟时间确定单元,用于将所述响应时间与所述触发起始时间的差值确定为所述测试页面的跟手延迟时间。
6.根据权利要求5所述的装置,其特征在于,所述起始时间获取单元包括:
滑动事件触发模块,用于发送预置的事件发送指令作为触发所述测试页面的页面滑动事件;
起始时间确定模块,用于当预置的事件接收指令监控到所述测试页面响应所述滑动事件触发模块发送的事件发送指令时,将所述预置的事件接收指令监控到的所述测试页面响应所述页面滑动事件的时间,确定为页面滑动事件的触发起始时间。
7.根据权利要求5或6所述的装置,其特征在于,所述响应时间获取单元包括:
获取模块,用于从多帧稳定展示画面中,获取最后一帧稳定展示画面,所述最后一帧稳定展示画面的展示时间戳晚于所述多帧稳定展示画面中的其他稳定展示画面;
查找模块,用于从所述多帧事件响应展示画面中,查找所述获取模块获取的最后一帧稳定展示画面;
响应时间确定模块,用于将所述多帧事件响应展示画面中,展示时间戳晚于所述查找模块找到的最后一帧稳定展示画面且展示时间戳的差值最小的事件响应展示画面的展示时间戳确定为测试页面响应所述页面滑动事件的响应时间。
8.根据权利要求5或6所述的装置,其特征在于,所述页面状态判断单元包括:
控件检测模块,用于检测所述测试页面中是否存在动态变化的控件;
页面判断模块,用于在控件检测模块确定测试页面中不存在动态变化的控件时,判断所述测试页面所展示的页面内容在预设时间段内是否发生变化;
页面状态确定模块,用于在页面判断模块确定页面内容未变化时,确定所述测试页面的当前展示状态为稳定。
9.一种存储介质,其特征在于,所述存储介质用于存储计算机程序,其中,所述计算机程序运行时控制所述存储介质所在设备执行权利要求1-4中任意一项所述的应用页面响应测试方法。
10.一种电子设备,其特征在于,所述电子设备中包括处理器和存储器,所述处理器用于调用所述存储器中的程序指令,以执行权利要求1-4中任意一项所述的应用页面响应测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910090094.9A CN111506488B (zh) | 2019-01-30 | 2019-01-30 | 一种应用页面响应测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910090094.9A CN111506488B (zh) | 2019-01-30 | 2019-01-30 | 一种应用页面响应测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111506488A true CN111506488A (zh) | 2020-08-07 |
CN111506488B CN111506488B (zh) | 2024-04-05 |
Family
ID=71875578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910090094.9A Active CN111506488B (zh) | 2019-01-30 | 2019-01-30 | 一种应用页面响应测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111506488B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112203150A (zh) * | 2020-09-30 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 一种耗时获取方法、装置、设备及计算机可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130179767A1 (en) * | 2012-01-05 | 2013-07-11 | Microsoft Corporation | Reducing Ad Impact to Browser Onload Event |
CN103645978A (zh) * | 2013-12-16 | 2014-03-19 | 百度在线网络技术(北京)有限公司 | 浏览器网页加载时间的测试方法、装置和系统 |
CN104778117A (zh) * | 2014-01-14 | 2015-07-15 | 中国移动通信集团浙江有限公司 | 一种测试阅读软件页面切换流畅性的方法及装置 |
CN105630566A (zh) * | 2016-02-26 | 2016-06-01 | 北京奇虎科技有限公司 | 应用页面加载时长的确定方法及装置 |
CN106502902A (zh) * | 2016-10-25 | 2017-03-15 | 中国工商银行股份有限公司 | web页面运行效率监测方法及装置 |
CN107301231A (zh) * | 2017-06-26 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 页面开启耗时的测试方法及测试系统 |
CN107562610A (zh) * | 2017-09-21 | 2018-01-09 | 上海谦问万答吧云计算科技有限公司 | 获取页面加载时间的方法、装置、终端和介质 |
US10114733B1 (en) * | 2016-08-29 | 2018-10-30 | Cadence Design Systems, Inc. | System and method for automated testing of user interface software for visual responsiveness |
CN109005459A (zh) * | 2018-08-01 | 2018-12-14 | 四川长虹电器股份有限公司 | 一种检测智能电视应用启动时间的方法 |
-
2019
- 2019-01-30 CN CN201910090094.9A patent/CN111506488B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130179767A1 (en) * | 2012-01-05 | 2013-07-11 | Microsoft Corporation | Reducing Ad Impact to Browser Onload Event |
CN103645978A (zh) * | 2013-12-16 | 2014-03-19 | 百度在线网络技术(北京)有限公司 | 浏览器网页加载时间的测试方法、装置和系统 |
CN104778117A (zh) * | 2014-01-14 | 2015-07-15 | 中国移动通信集团浙江有限公司 | 一种测试阅读软件页面切换流畅性的方法及装置 |
CN105630566A (zh) * | 2016-02-26 | 2016-06-01 | 北京奇虎科技有限公司 | 应用页面加载时长的确定方法及装置 |
US10114733B1 (en) * | 2016-08-29 | 2018-10-30 | Cadence Design Systems, Inc. | System and method for automated testing of user interface software for visual responsiveness |
CN106502902A (zh) * | 2016-10-25 | 2017-03-15 | 中国工商银行股份有限公司 | web页面运行效率监测方法及装置 |
CN107301231A (zh) * | 2017-06-26 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 页面开启耗时的测试方法及测试系统 |
CN107562610A (zh) * | 2017-09-21 | 2018-01-09 | 上海谦问万答吧云计算科技有限公司 | 获取页面加载时间的方法、装置、终端和介质 |
CN109005459A (zh) * | 2018-08-01 | 2018-12-14 | 四川长虹电器股份有限公司 | 一种检测智能电视应用启动时间的方法 |
Non-Patent Citations (2)
Title |
---|
张晓丽;: "减少Web应用中用户感知时间的技术研究" * |
谷林涛;徐立华;: "基于GUI的Android移动软件性能测试" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112203150A (zh) * | 2020-09-30 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 一种耗时获取方法、装置、设备及计算机可读存储介质 |
CN112203150B (zh) * | 2020-09-30 | 2022-03-11 | 腾讯科技(深圳)有限公司 | 一种耗时获取方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111506488B (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109240576B (zh) | 游戏中的图像处理方法及装置、电子设备、存储介质 | |
CN109189682A (zh) | 一种脚本录制方法和装置 | |
KR20170084118A (ko) | 레이턴시를 최소화하기 위해 입력 센싱, 렌더링, 및 디스플레이할 시기를 정하는 시스템 및 방법 | |
US11455075B2 (en) | Display method when application is exited and terminal | |
CN102981944B (zh) | 一种基于文件系统的日志存储方法 | |
CN111143200A (zh) | 触摸事件的录制及回放方法、装置、存储介质及设备 | |
CN113505029B (zh) | 延迟测试方法和相关装置 | |
CN110018920A (zh) | 一种页面展示异常的检测方法、装置及设备 | |
US20200136988A1 (en) | Resource optimization and update method, server, and device | |
CN106982368A (zh) | 视频响应速度检测方法和系统 | |
CN108509348B (zh) | 一种系统老化的测试方法及移动终端 | |
CN106294463B (zh) | 一种动态曲线的数据点更新方法和设备 | |
WO2023185767A1 (zh) | 慢盘检测方法、装置、电子设备及存储介质 | |
CN111447239A (zh) | 视频流播放控制方法、设备及存储介质 | |
CN110069194B (zh) | 页面卡顿确定方法、装置、电子设备及可读存储介质 | |
CN111506488B (zh) | 一种应用页面响应测试方法及装置 | |
CN111639018B (zh) | 一种内存泄漏检测方法和装置 | |
CN111538638A (zh) | 一种iOS端应用程序性能的监控方法和装置 | |
US20160085408A1 (en) | Information processing method and electronic device thereof | |
US9378109B1 (en) | Testing tools for devices | |
CN109842533A (zh) | 一种检测游戏卡顿帧的方法及装置 | |
WO2017095362A1 (en) | Generating application flow entities | |
CN105718363A (zh) | 手机响应启动时间点获取方法和装置 | |
CN113556366B (zh) | 多传感器数据同步方法及其系统和电子设备 | |
CN111104017B (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 |