CN107797904B - 一种测量响应时间的方法及终端 - Google Patents
一种测量响应时间的方法及终端 Download PDFInfo
- Publication number
- CN107797904B CN107797904B CN201710815643.5A CN201710815643A CN107797904B CN 107797904 B CN107797904 B CN 107797904B CN 201710815643 A CN201710815643 A CN 201710815643A CN 107797904 B CN107797904 B CN 107797904B
- Authority
- CN
- China
- Prior art keywords
- time point
- time
- called
- function
- interface
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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/3419—Recording 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
Abstract
本发明涉及数据处理领域,尤其涉及一种测量响应时间的方法及终端。本发明通过获取触发界面渲染操作的时间点,得到开始时间点;实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点;根据所述结束时间点和所述开始时间点计算得到响应时间。实现同时提高测量应用响应时间的精确度及效率。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种测量响应时间的方法及终端。
背景技术
应用响应时间指用户发出请求到系统做出反应的时间。应用响应时间包含系统响应时间、程序响应时间和界面渲染时间。响应时间是应用性能测试的主要指标之一,同时也是影响用户体验和软件产品质量的主要因素之一。
传统的响应时间测量方案有以下几种:一种是在应用程序中加入时间点记录代码,通过Log输出,手动计算响应时间,需要一定的人力投入,并且需要源码提供支持,需对软件架构有一定的了解,这种方案效率低,同时误差大,无法计算界面渲染时间和系统响应时间;另一种是通过高速相机录像,通过解析帧来计算响应时间,这种方案虽然误差小,但需要投入大量人力,效率低。还有一种是通过自动化测试工具和屏幕截图实时匹配来计算。这种方案的缺点是实时匹配消耗大量系统资源,会使应用响应时间偏大。上述测量应用响应时间的方法都无法均衡响应时间的精确度及测量效率。
发明内容
本发明所要解决的技术问题是:如何同时提高测量应用响应时间的精确度及效率。
为了解决上述技术问题,本发明采用的技术方案为:
本发明提供一种测量响应时间的方法,包括:
S1、获取触发界面渲染操作的时间点,得到开始时间点;
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点;
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
本发明还提供一种测量响应时间的终端,包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:
S1、获取触发界面渲染操作的时间点,得到开始时间点;
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点;
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
本发明的有益效果在于:绘图结束函数用于标记指定窗口的渲染过程结束,当渲染一帧结束时就会调用绘图结束函数。例如,在Windows操作系统中,绘图结束函数为EndPaint函数。但是,当监控到绘图结束函数被调用时,并不能代表界面变化过程结束,例如,一应用程序的首页是个广告图片页面,停留广告图片页面2秒后进入应用程序主页,在广告页面渲染一次,进入主页渲染一次。如果广告页是个视频,则会发生更多渲染。本发明通过实时监控绘图结束函数,且只有当绘图结束函数被调用后的预设时间间隔内均不存在再次渲染界面的操作时,才认为界面变化过程结束,提高了获取界面渲染结束的实际时间的精确度,从而提高了计算应用响应时间的精确度。并且,区别于现有技术需解析实时捕获的屏幕截图,本发明提供的测量响应时间的方法只需监控触发界面渲染操作的时间点及绘图结束函数被调用的时间点并进行简单的数值数据处理操作即可,远比图像处理操作效率高。因此,本发明提供的测量响应时间的方法及终端,不仅可获得高精确度的应用响应时间,而且测量响应时间的效率高。
附图说明
图1为本发明提供的一种测量响应时间的方法的具体实施方式的流程框图;
图2为本发明提供的一种测量响应时间的终端的具体实施方式的结构框图;
图3为界面变化第一示意图;
图4为界面变化第二示意图;
图5为界面变化第三示意图;
图6为本发明提供的一种测量响应时间的系统的架构图;
图7为本发明提供的一种测量响应时间的系统的工作流程图;
标号说明:
1、处理器;2、存储器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1以及图2,
如图1所示,本发明提供一种测量响应时间的方法,包括:
S1、获取触发界面渲染操作的时间点,得到开始时间点;
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点;
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
进一步地,所述S2具体为:
预设监控区域;
实时监控绘图结束函数,
若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合。
由上述描述可知,若系统调用绘画结束函数是用于渲染非欲监控的界面区域,则不记录绘画结束函数被调用的时间点,避免由于其他程序的干扰增大应用响应时间误差,有利于提高测量应用响应时间的精确度。
进一步地,所述S3之前,还包括:
若预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述预设监控区域均不匹配,则标记预设的时间间隔内未监控到所述绘图结束函数被调用。
由上述描述可知,所述监控区域可以为静态区域,即界面图像不会在一时间段内持续变化的区域,例如,标题栏、状态栏、静态图片区域等。相对的动态区域包括但不仅限于视频播放区域,动态图片区域等。本发明通过判断界面中的静态区域是否渲染完毕作为应用响应的结束时间点,以实现可测量应用响应用户操作后界面是动态的情形。
进一步地,所述S3之前,还包括:
预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,所述预设的时间间隔内未监控到所述绘图结束函数被调用,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
由上述描述可知,应用程序启动过程中可能会经历多次的界面变化。例如,一应用程序显示首页前会播放图片广告,则在应用程序启动过程中会经历至少两次界面变化,第一次为从系统桌面变化为广告页面,第二次为从广告页面变化为应用程序首页。对于应用启动过程中存在多次界面变化的情况,本发明通过预先设置界面变化次数来判断应用程序是否启动完毕,以提高测量应用响应时间的精确度。
进一步地,所述S1具体为:
获取一应用程序接收到点击操作的时间点,得到开始时间点。
由上述描述可知,可测试应用程序的启动时间,或应用程序中某一可使界面变化的按钮的响应时间。
如图2所示,本发明还提供一种测量响应时间的终端,包括一个或多个处理器1及存储器2,所述存储器2存储有程序,并且被配置成由所述一个或多个处理器1执行以下步骤:
S1、获取触发界面渲染操作的时间点,得到开始时间点;
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点;
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
进一步地,所述S2具体为:
预设监控区域;
实时监控绘图结束函数,
若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合。
进一步地,所述S3之前,还包括:
若预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述预设监控区域均不匹配,则标记预设的时间间隔内未监控到所述绘图结束函数被调用。
进一步地,所述S3之前,还包括:
预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,所述预设的时间间隔内未监控到所述绘图结束函数被调用,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
进一步地,所述S1具体为:
获取一应用程序接收到点击操作的时间点,得到开始时间点。
本发明的实施例一为:
本实施例提供一种测量响应时间的方法,包括:
S1、获取触发界面渲染操作的时间点,得到开始时间点。
可选地,获取一应用程序接收到点击操作的时间点,得到开始时间点。
其中,本实施例要测量的响应时间为用户操作请求发出到UI界面渲染结束的时间。用户操作请求发出的时间可通过自动化脚本自动监控并记录用户执行点击操作或触摸操作的时间点,即开始时间点。
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合。
其中,要实现实时监控绘图结束函数,首先要将实时监控的代码DLL注入到目标进程中,所述目标进程与欲测试响应时间的应用程序对应。例如,现欲测试即时通讯软件从用户点击图标至启动完毕这一过程的响应时间,则将实时监控代码注入至即时通讯软件对应的进程中。使用第三方库Detours可以轻松实现代码注入和接口拦截。首先创建DLL库,用于存放监控代码,在DLL库中通过Detours提供的DetourAttach方法来拦截绘图结束函数(例如,EndPaint接口);最后通过Detours提供的DetourCreateProcessWithDll方法将DLL注入目标进程中,完成注入过程。
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点。
其中,一个UI界面变化过程由一个或者多个的图像帧绘制组成,因此,当监控到绘画结束函数被调用时,并不能代表一个UI界面变化结束,可能下一个时刻还会监控到绘画结束函数被调用,只有当在一段时间内UI界面维持稳定状态才可认为界面渲染结束。在一定条件下,界面渲染过程中会出现卡顿情况,如图3所示,在T11~T12间出现卡顿,Tw0卡顿时界面的变化率达到短暂稳态,只要设置所述预设的时间间隔大于Tw0即可过滤Tw0短暂稳态的情况。
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
其中,将所述结束时间减去所述开始时间即得到响应时间。
由上述描述可知,绝大多数的界面变化后终点都是稳定的,如,点击打开按钮,弹出对话框,起点是点击打开按钮的动作,终点是显示对话框界面。整个UI变化曲线如图4所示。本实施例提供的测量响应时间的方法适用于界面变化的终点是稳定的情况。
本发明的实施例二为:
本实施例提供一种测量响应时间的方法,包括:
S1、获取触发界面渲染操作的时间点,得到开始时间点。
可选地,获取一应用程序接收到点击操作的时间点,得到开始时间点。
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;具体为:
S21、预设监控区域;
S22、实时监控绘图结束函数,若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合。
S3、若预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述预设监控区域均不匹配,则标记预设的时间间隔内未监控到所述绘图结束函数被调用。
例如,在一些视频播放器等场景,响应的终点是动态的,例如,测试播放控件的响应时间,点击播放控件的操作为起点,开始播放视频为终点,在视频播放的过程中,播放视频区域是动态的,UI界面会不断重绘,监控程序不断的监控到绘图结束函数被调用,无法捕获到UI界面渲染结束终点。但是,虽然播放视频区域是持续变化的,窗口的标题栏和状态栏是静态的,一旦显示完整就不会重绘,因此,若只是监控标题栏或状态栏等静态区域是否渲染结束即可准确获知播放控件的响应结束时间。其中,EndPaint接口参数lpPaint中包含UI界面绘制的区域坐标,当EndPaint函数被调用时,只需比对当前EndPaint函数的lpPaint参数所指定的绘制区域与预设的监控区域是否适配;若适配则此次EndPaint函数被调用时有效的,需记录被调用的时间点;若不适配,则此次EndPaint函数被调用的相关数据不作为测量响应时间的依据,认为此次EndPaint函数被调用是无效的,这样就可以过滤掉动态区域调用EndPaint函数的情况了。
S4、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点。
S5、根据所述结束时间点和所述开始时间点计算得到响应时间。
由上述描述可知,本实施例提出的测量响应时间的方法,通过监控界面的静态区域是否渲染结束,实现可测量应用响应用户操作后界面是动态的情形。
本发明的实施例三为:
S1、获取触发界面渲染操作的时间点,得到开始时间点。
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合。
S3、预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,所述预设的时间间隔内未监控到所述绘图结束函数被调用,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
其中,再复杂的UI渲染过程都可以分解为如图5所示的曲线,由一系列的“变化-稳定-变化”的过程组成,并生成了一系列的拐点(T1,T2,T3...)。例如启动一个具有启动广告界面的应用,用户想要测量从点击启动到真正进入应用(广告界面之后)的响应时间,对应图5分析,T0为用户点击启动时间点,T1准备开始渲染广告界面,T2广告界面渲染结束,停留在广告界面一段时间(T2~T3)后,开始准备进入应用,开始准备渲染(T3),UI界面渲染结束后(T4),T4为响应时间的终点。测量前,根据场景,设置指定的拐点序号为响应时间的终点,如输入3(第拐点T3),当程序中识别到T1拐点时,即是用户指明的响应时间终点,停止监控,并输出响应时间的终点时间点。
S4、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点。
S5、根据所述结束时间点和所述开始时间点计算得到响应时间。
由上述描述可知,本实施例适用于响应过程经历多次界面变化的情形。
本发明的实施例四为:
本实施例提供一种测量响应时间的方法,包括:
S1、获取触发界面渲染操作的时间点,得到开始时间点。
可选地,获取一应用程序接收到点击操作的时间点,得到开始时间点。
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;具体为:
预设监控区域;
实时监控绘图结束函数,
若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合。
S3、预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述预设监控区域均不匹配,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
S4、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点。
S5、根据所述结束时间点和所述开始时间点计算得到响应时间。
由上述描述可知,本实施例适用于响应结束后界面仍处于持续变化,且响应过程经历多次界面变化的情形。
本发明的实施例五为:
本实施例提供一种测量响应时间的终端,包括一个或多个处理器1及存储器2,所述存储器2存储有程序,并且被配置成由所述一个或多个处理器1执行以下步骤:
S1、获取触发界面渲染操作的时间点,得到开始时间点。
可选地,获取一应用程序接收到点击操作的时间点,得到开始时间点。
S2、实时监控绘图结束函数,并记录绘图结束函数被调用的时间点,得到调用时间点集合;具体为:
预设监控区域;
实时监控绘图结束函数,
若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合。
S3、预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述预设监控区域均不匹配,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
S4、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的所述时间点,得到结束时间点。
S5、根据所述结束时间点和所述开始时间点计算得到响应时间。
本发明的实施例六为:
本实施例提供一种测量响应时间的系统,包括监控层、通讯层、管理层、接口层和应用层五层结构,系统架构图如图6所示。
其中,监控层主要完成接口拦截,达到接口监控的目的,本实施例监控的是EndPaint接口,并把监控到的信息通过通讯层传送到管理层。
通讯层的主要任务是完成监控层和管理层的通讯。监控层和管理层处于不同的进程中,考虑到效率,优先选择共享内存,同时考虑支持多进程监控(虽然注入器可以根据用户配置监控多个目标进程,一旦有目标进程出现,注入器就会把监控代码注入的目标进程中,监控代码在不同目标进程中并行工作),为了防止多个目标进程中监控代码同时发送消息,即同时访问临界区,造成通讯异常,需要加入异步锁机制。为了防止通讯层阻塞,引入队列缓存机制。例如,同时监控5个进程,每个进程都有可能发生大量的Endpaint信息,但是管理层只有一个线程在读Endpaint,信息量一旦多起来就忙不过来,出现还没管理层还没读到Endpaint信息就被下一个的Endpaint信息覆盖了
管理层作为系统的心脏,的工作主要有:
1.接收来自接口层控制命令,如开始监控命令、停止监控命令;
2.通过代码注入器把Endpaint接口监控代码注入到目标进程中;
3.接收监控层发过来的Endpaint监控信息,通过终点裁决器判断是否为终点;
4.把终点时间点通过接口层发送给应用层。
接口层的设计是为了提供给应用层的统一接口,采用JSON标准接口,Socket作为通讯载体。
应用层可以是一个自动化测试框架,一个应用程序,或者一个组件,通过JSON接口获取目标程序的UI响应时间。
系统的工作流程图如图7所示,具体的步骤包括:
S1、系统启动后,进行初始化,并启动注入器和Socket服务器;
S2、注入器创建等待目标进程的线程;
S3、Socket服务器初始化完等待应用层连接;
S4、应用层自动化程序启动,连接接口,并发送开始命令;
S5、Socket服务器接受应用层连接,并接受到应用层的开始监控命令;
S6、终点裁决器开始工作,在等待监控层的目标进程发过来的Endpaint信息;
S7、应用层自动化程序记录开始时间点,并启动目标应用(要测量响应时间的应用),然后进行等待终点;
S8、目标应用刚启动(还没启动完毕),就会被注入器发现,并进行注入;
S9、目标应用在启动过程中,UI界面开始绘制渲染,注入代码监控到Endpaint接口被调用;
S10、注入的代码发Endpaint信息通过通讯模块发给终点裁决器;
其中,Endpaint信息包含UI绘制的区域和接收到Endpaint时的时间点。
S11、终点裁决器接收Endpaint信息,并判断是否为终点,若为终点,终止监控,并发送终点时间点给应用层自动化程序。
其中,终点裁决器判断是否为界面渲染终点的过程参照实施例一至实施例四。
S12、应用层自动化程序接收到终点时间点,与起始时间点相减,计算得到相应时间。
综上所述,本发明提供的一种测量响应时间的方法及终端,本发明通过实时监控绘图结束函数,且只有当绘图结束函数被调用后的预设时间间隔内均不存在再次渲染界面的操作时,才认为界面变化过程结束,提高了获取界面渲染结束的实际时间的精确度,从而提高了计算应用响应时间的精确度。并且,区别于现有技术需解析实时捕获的屏幕截图,本发明提供的测量响应时间的方法只需监控触发界面渲染操作的时间点及绘图结束函数被调用的时间点并进行简单的数值数据处理操作即可,远比图像处理操作效率高。因此,本发明提供的测量响应时间的方法及终端,不仅可获得高精确度的应用响应时间,而且测量响应时间的效率高。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种测量响应时间的方法,其特征在于,包括:
S1、获取触发界面渲染操作的时间点,得到开始时间点;
S2、预设监控区域,实时监控绘图结束函数,若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合;
其中,当渲染界面的一图像帧结束时就会调用绘图结束函数;
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的时间点,得到结束时间点;
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
2.根据权利要求1所述的测量响应时间的方法,其特征在于,所述S3之前,还包括:
若预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述监控区域均不匹配,则标记预设的时间间隔内未监控到所述绘图结束函数被调用。
3.根据权利要求1所述的测量响应时间的方法,其特征在于,所述S3之前,还包括:
预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,预设的时间间隔内未监控到所述绘图结束函数被调用,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
4.根据权利要求1所述的测量响应时间的方法,其特征在于,所述S1具体为:
获取一应用程序接收到点击操作的时间点,得到开始时间点。
5.一种测量响应时间的终端,其特征在于,包括一个或多个处理器及存储器,所述存储器存储有程序,并且被配置成由所述一个或多个处理器执行以下步骤:
S1、获取触发界面渲染操作的时间点,得到开始时间点;
S2、预设监控区域,实时监控绘图结束函数,若与当前被调用的绘图结束函数对应的绘制区域与所述监控区域匹配,则记录绘图结束函数被调用的时间点,得到调用时间点集合;
其中,当渲染界面的一图像帧结束时就会调用绘图结束函数;
S3、若预设的时间间隔内未监控到所述绘图结束函数被调用,则从所述调用时间点集合中获取与当前系统时间的时间间隔最小的时间点,得到结束时间点;
S4、根据所述结束时间点和所述开始时间点计算得到响应时间。
6.根据权利要求5所述的测量响应时间的终端,其特征在于,所述S3之前,还包括:
若预设的时间间隔内与被调用的绘图结束函数对应的绘制区域与所述监控区域均不匹配,则标记预设的时间间隔内未监控到所述绘图结束函数被调用。
7.根据权利要求5所述的测量响应时间的终端,其特征在于,所述S3之前,还包括:
预设界面渲染次数;
实时监控绘图结束函数,
Sm、获取所述调用时间点集合中值最大的元素,得到最新调用时间点;
Sn、若从所述最新调用时间点开始,预设的时间间隔内未监控到所述绘图结束函数被调用,则实际界面渲染次数加一;
重复执行步骤Sm至Sn,直至所述实际界面渲染次数与预设的界面渲染次数相等;
标记预设的时间间隔内未监控到所述绘图结束函数被调用。
8.根据权利要求5所述的测量响应时间的终端,其特征在于,所述S1具体为:
获取一应用程序接收到点击操作的时间点,得到开始时间点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710815643.5A CN107797904B (zh) | 2017-09-12 | 2017-09-12 | 一种测量响应时间的方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710815643.5A CN107797904B (zh) | 2017-09-12 | 2017-09-12 | 一种测量响应时间的方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107797904A CN107797904A (zh) | 2018-03-13 |
CN107797904B true CN107797904B (zh) | 2021-12-24 |
Family
ID=61532232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710815643.5A Active CN107797904B (zh) | 2017-09-12 | 2017-09-12 | 一种测量响应时间的方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107797904B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109446040B (zh) * | 2018-09-21 | 2021-01-22 | 网宿科技股份有限公司 | 一种应用界面启动时长的获取方法、装置及终端设备 |
CN111666200A (zh) * | 2019-03-08 | 2020-09-15 | 福建天泉教育科技有限公司 | 一种pc软件冷启动耗时的测试方法及终端 |
CN110058997A (zh) * | 2019-03-12 | 2019-07-26 | 平安普惠企业管理有限公司 | 应用响应时间测试方法、装置、计算机设备及存储介质 |
CN110659094A (zh) * | 2019-09-11 | 2020-01-07 | 北京达佳互联信息技术有限公司 | 一种对象渲染及其控制方法、装置、设备及介质 |
CN110781067A (zh) * | 2019-10-30 | 2020-02-11 | 北京博睿宏远数据科技股份有限公司 | 一种启动耗时的计算方法、装置、设备和存储介质 |
CN111367434B (zh) * | 2020-03-06 | 2023-02-10 | Oppo广东移动通信有限公司 | 触控延迟的检测方法、装置、电子设备及存储介质 |
CN112346935A (zh) * | 2020-11-12 | 2021-02-09 | 腾讯科技(北京)有限公司 | 渲染耗时的获取、显示方法、性能监控方法、装置及设备 |
CN113032172A (zh) * | 2021-03-04 | 2021-06-25 | 北京字节跳动网络技术有限公司 | 异常检测方法、装置和电子设备 |
CN113360398B (zh) * | 2021-06-29 | 2023-09-01 | 西安天下帮扶信息科技有限公司 | 混合应用程序测试方法、装置、设备及介质 |
CN113688019B (zh) * | 2021-08-10 | 2022-08-09 | 荣耀终端有限公司 | 响应时长检测方法及装置 |
CN114328131B (zh) * | 2022-03-09 | 2022-05-27 | 深圳市佳贤通信设备有限公司 | 基于时钟周期记录的函数耗时监测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881273A (zh) * | 2014-02-27 | 2015-09-02 | 腾讯科技(深圳)有限公司 | 一种网页渲染的分析方法和终端设备 |
CN106802935A (zh) * | 2016-12-29 | 2017-06-06 | 腾讯科技(深圳)有限公司 | 一种页面流畅度的测试方法和装置 |
CN107066383A (zh) * | 2017-03-15 | 2017-08-18 | 武汉斗鱼网络科技有限公司 | 一种应用程序流畅度检测方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6952215B1 (en) * | 1999-03-31 | 2005-10-04 | International Business Machines Corporation | Method and system for graphics rendering using captured graphics hardware instructions |
JP3579826B2 (ja) * | 2000-08-09 | 2004-10-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ処理システム、データロギングシステム、システムパフォーマンスの測定方法、および、記録媒体 |
US6792460B2 (en) * | 2002-10-02 | 2004-09-14 | Mercury Interactive Corporation | System and methods for monitoring application server performance |
CN102662839B (zh) * | 2012-03-29 | 2015-02-18 | 北京奇虎科技有限公司 | 一种软件的界面状态变化时间的测试方法和装置 |
WO2015195407A1 (en) * | 2014-06-19 | 2015-12-23 | Thomson Licensing | Method and apparatus for monitoring and determining page load times |
CN105573755B (zh) * | 2015-12-15 | 2019-03-08 | 北京奇虎科技有限公司 | 一种应用Activity渲染时间获取方法和装置 |
CN106502902B (zh) * | 2016-10-25 | 2019-03-22 | 中国工商银行股份有限公司 | web页面运行效率监测方法及装置 |
-
2017
- 2017-09-12 CN CN201710815643.5A patent/CN107797904B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881273A (zh) * | 2014-02-27 | 2015-09-02 | 腾讯科技(深圳)有限公司 | 一种网页渲染的分析方法和终端设备 |
CN106802935A (zh) * | 2016-12-29 | 2017-06-06 | 腾讯科技(深圳)有限公司 | 一种页面流畅度的测试方法和装置 |
CN107066383A (zh) * | 2017-03-15 | 2017-08-18 | 武汉斗鱼网络科技有限公司 | 一种应用程序流畅度检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107797904A (zh) | 2018-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107797904B (zh) | 一种测量响应时间的方法及终端 | |
CN107341098B (zh) | 软件性能测试方法、平台、设备及存储介质 | |
US10321342B2 (en) | Methods and systems for performance monitoring for mobile applications | |
WO2019085598A1 (zh) | 计算页面首屏渲染时长的方法、装置及电子设备 | |
CN111858318B (zh) | 一种响应时间的测试方法、装置、设备和计算机存储介质 | |
CN111813687A (zh) | 测试方法、装置、控制终端、测试设备及存储介质 | |
CN103324521A (zh) | 一种测量网页首屏时间的方法 | |
CN109976966A (zh) | 一种应用程序启动时间统计方法、装置及系统 | |
US11941728B2 (en) | Previewing method and apparatus for effect application, and device, and storage medium | |
CN111190827A (zh) | 接口自动化测试方法、装置、存储介质及电子设备 | |
EP2731015A2 (en) | Computer infrastructure performance system | |
CN111427779A (zh) | 应用程序的卡顿信息采集方法和装置 | |
CN110908864A (zh) | 一种设备卡顿的处理方法、装置、设备和介质 | |
CN112346946B (zh) | 一种基于控件定位的用户软件操作行为监控方法与系统 | |
CN110209557B (zh) | 用户操作录制还原方法、装置、设备及可读存储介质 | |
WO2016188101A1 (zh) | 一种针对业务系统的测试方法和装置 | |
CN108334015A (zh) | 计算机监控系统实时性测试方法、装置和计算机设备 | |
CN109885492B (zh) | 一种基于图像识别和曲线拟合的响应时间测试方法及终端 | |
CN104471531A (zh) | 捕获会话中的应用状态 | |
CN112215898B (zh) | 多相机间帧数据均衡控制方法、装置和计算机设备 | |
CN112835667A (zh) | 一种界面元素定位方法、设备及存储介质 | |
CN111506488B (zh) | 一种应用页面响应测试方法及装置 | |
CN113521760A (zh) | 游戏竞猜结算方法、相关设备和计算机可读存储介质 | |
CN110584695A (zh) | 医疗影像设备的测试方法、装置、设备及存储介质 | |
JPH10301809A (ja) | Gui操作手順の自動生成方法 |
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 |