一种耗时获取方法、装置、设备及计算机可读存储介质与流程

文档序号:23586955发布日期:2021-01-08 14:20阅读:58来源:国知局
一种耗时获取方法、装置、设备及计算机可读存储介质与流程

本申请涉及计算机应用领域中的测试技术,尤其涉及一种耗时获取方法、装置、设备及计算机可读存储介质。



背景技术:

随着各种应用的快速发展,应用的运行效率变得越来越重要,而影响应用的运行效率的主要因素为页面跳转耗时;因此,页面跳转耗时的获取是应用测试中的重要部分。

一般来说,为了获取页面跳转耗时,通常采用掐表的方式记录页面接收操作的时间和页面完成跳转的时间,进而将页面接收操作的时间和页面完成跳转的时间之间的时间差作为页面跳转耗时。然而,上述获取页面跳转耗时的过程,是通过人工进行掐表实现的;从而,获得的页面跳转耗时的准确度较低。



技术实现要素:

本申请实施例提供一种耗时获取方法、装置、设备及计算机可读存储介质,能够提升获得的页面跳转耗时的准确度。

本申请实施例的技术方案是这样实现的:

本申请实施例提供一种耗时获取方法,包括:

获取页面跳转视频,所述页面跳转视频为目标设备上显示的目标页面接收到目标操作时所录制的页面变化信息;

对所述页面跳转视频进行抽帧,得到帧图像序列;

依次获取所述帧图像序列中的相邻两帧图像之间的相似度;

当所述相似度小于预设相似度时,确定所述相邻两帧图像中的前一帧图像所对应的帧为跳转结束帧;

依据所述页面跳转视频的首帧与所述跳转结束帧之间的帧差,确定所述目标页面对应的页面跳转耗时。

本申请实施例提供一种耗时获取装置,包括:

视频获取模块,用于获取页面跳转视频,所述页面跳转视频为目标设备上显示的目标页面接收到目标操作时所录制的页面变化信息;

视频抽帧模块,用于对所述页面跳转视频进行抽帧,得到帧图像序列;

相似度获取模块,用于依次获取所述帧图像序列中的相邻两帧图像之间的相似度;

结束帧确定模块,用于当所述相似度小于预设相似度时,确定所述相邻两帧图像中的前一帧图像所对应的帧为跳转结束帧;

耗时获取模块,用于依据所述页面跳转视频的首帧与所述跳转结束帧之间的帧差,确定所述目标页面对应的页面跳转耗时。

在本申请实施例中,所述相似度获取模块,还用于对依次获得的所述帧图像序列中的所述相邻两帧图像,分别进行预处理,得到两张待对比图像;对所述两张待对比图像进行差分处理,得到差分图像;基于统计出的所述差分图像中的预设差异像素点的数量,确定所述相似度。

在本申请实施例中,所述相似度获取模块,还用于获取操作位置信息,所述操作位置信息为所述目标操作所作用在所述目标页面的位置信息;基于所述操作位置信息和预设区域信息,分别对所述两张待对比图像进行区域截取,得到两张目标图像;对所述两张目标图像进行差分处理,得到初始相似度;

在本申请实施例中,所述相似度获取模块,还用于当所述初始相似度大于或等于所述预设相似度时,对所述两张待对比图像进行差分处理,得到所述差分图像。

在本申请实施例中,所述耗时获取装置还包括梯度获取模块,用于当所述相似度大于或等于所述预设相似度时,获取所述相邻两帧图像对应的相似度梯度;当所述相似度梯度大于预设梯度阈值时,确定所述相邻两帧图像中的所述前一帧图像对应的帧为所述跳转结束帧。

在本申请实施例中,所述相似度获取模块,还用于将所述初始相似度,确定为所述相似度。

在本申请实施例中,所述视频抽帧模块,还用于对所述页面跳转视频进行抽帧,得到初始帧图像序列;对所述初始帧图像序列中的每个初始帧图像进行灰度化处理,得到灰度帧图像;对所述灰度帧图像进行二值化处理,得到二值帧图像;对所述二值帧图像进行边缘检测,得到边缘帧图像;利用预设图像尺寸,对所述边缘帧图像进行缩放,得到与所述每个初始帧图像对应的帧图像,从而得到与所述初始帧图像序列对应的所述帧图像序列。

在本申请实施例中,所述视频获取模块,还用于通过控制装置执行目标测试用例时,向所述目标设备发送所述目标操作对应的操作指令,以及生成视频采集指令;所述目标设备在所述目标页面上执行所述目标操作对应的操作指令时,所述控制装置响应所述视频采集指令,控制图像采集装置,采集支架底座承载的所述目标设备上所显示的页面变化信息,得到所述页面跳转视频;其中,所述控制装置分别与所述目标设备和所述图像采集装置建立了通信连接。

在本申请实施例中,所述视频获取模块,还用于获取所述图像采集装置对应的采集区域图像;获取所述采集区域图像的图像校正信息。

在本申请实施例中,所述视频获取模块,还用于依据所述图像校正信息,控制所述图像采集装置,采集所述支架底座承载的所述目标设备上所显示的页面变化信息,得到所述页面跳转视频。

在本申请实施例中,所述支架底座通过支架与所述图像采集装置连接,所述图像采集装置的采集区域与所述支架底座的承载区域对应。

在本申请实施例中,所述支架包括第一子支架和与第二子支架;其中,所述第一子支架的一端用于连接所述支架底座,所述第二子支架的一端用于连接所述图像采集装置,所述第一子支架与所述第二子支架通过卡扣在对方支架上进行移动,以调整所述图像采集装置的所述采集区域。

在本申请实施例中,所述视频获取模块,还用于在所述目标页面上执行所述目标操作对应的操作指令时,启动录屏应用;利用启动的录屏应用,对所述目标设备上所显示的页面变化信息进行录制,得到所述页面跳转视频。

本申请实施例提供一种耗时获取设备,包括:

存储器,用于存储可执行指令;

控制装置,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的耗时获取方法。

本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起控制装置执行时,实现本申请实施例提供的耗时获取方法。

本申请实施例至少具有以下有益效果:通过对目标页面接收到目标操作时所发生的页面变化信息进行录制,实现了对页面跳转过程的准确记录;进而依次对录制的页面跳转视频中相邻两帧图像之间的相似度进行判断,以确定出跳转结束时所对应的帧(跳转结束帧);并将页面跳转视频的首帧,与跳转结束时所对应的帧之间的帧差,确定为页面跳转耗时,实现了一种准确地确定页面跳转耗时的过程,因此,能够提升获得的页面跳转耗时的准确度。

附图说明

图1是本申请实施例提供的耗时获取系统的一个可选的架构示意图;

图2是本申请实施例提供的图1中的终端的组成结构示意图;

图3是本申请实施例提供的耗时获取方法的一个可选的流程示意图;

图4是本申请实施例提供的耗时获取方法的另一个可选的流程示意图;

图5是本申请实施例提供的耗时获取方法的再一个可选的流程示意图;

图6是本申请实施例提供的一种示例性的耗时获取设备的组成示意图;

图7是本申请实施例提供的另一种示例性的耗时获取设备的组成示意图;

图8是本申请实施例提供的耗时获取方法的又一个可选的流程示意图;

图9是本申请实施例提供的一种示例性的获取耗时的流程示意图;

图10是本申请实施例提供的一种示例性的耗时获取设备的组成示意图;

图11是本申请实施例提供的一种示例性的采集区域的图像的示意图;

图12是本申请实施例提供的一种示例性的校正后的采集区域的图像的示意图;

图13是本申请实施例提供的一种示例性的批量录制的视频的示意图;

图14是本申请实施例提供的一种示例性的相邻两帧图像的一张图像的示意图;

图15是本申请实施例提供的一种示例性的相邻两帧图像的另一张图像的示意图;

图16是本申请实施例提供的一种示例性的差分结果的示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。

在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。

1)抽帧:指将一段视频按照该段视频的帧率转换为多帧图像的过程,即获取一段视频对应的图像序列的过程。

2)图像相似度:用于衡量图像之间的相似程度,本申请实施例中的相似度和初始相似度均为图像相似度;通常来说,图像相似度用图像之间的差异信息来表示,从而,图像相似度所对应的值越大,表明图像之间越不相似;而图像相似度所对应的值越小,表明图像之间越相似。

3)图像校正:指依次对图像进行灰度化、二值化、边缘检测、求最小外接矩形和角度旋转处理的过程。

一般来说,为了获取页面跳转耗时,通常采用掐表的方式记录页面接收操作的时间和页面完成跳转的时间,进而将页面接收操作的时间和页面完成跳转的时间之间的时间差作为页面跳转耗时。然而,上述获取页面跳转耗时的过程,是通过人工进行掐表实现的;从而,人工成本高,获取页面跳转耗时的智能性和效率较低,获得的页面跳转耗时的准确度较低。

另外,为了获取页面跳转耗时,通常还可以采用记录应用日志的方式获取页面跳转耗时;然而,上述获取页面跳转耗时的过程中,记录应用日志会对应用造成入侵,且有时有的待测试应用的操作日志无法通过记录应用日志获得(比如,测试另一公司的应用时,无法增加用于记录应用日志的功能)。从而,应用测试过程的安全性较低,应用测试的可行性较低。

基于此,本申请实施例提供一种耗时获取方法、装置、设备和计算机可读存储介质,能够提升获取页面跳转耗时的智能性和效率,获得的页面跳转耗时的准确度,应用测试过程的安全性,以及应用测试的可行性。

下面说明本申请实施例提供的耗时获取设备的示例性应用,本申请实施例提供的设备可以实施为笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的用户终端,也可以实施为服务器。下面,将说明设备实施为终端时的示例性应用。

参见图1,图1是本申请实施例提供的耗时获取系统的一个可选的架构示意图;如图1所示,为支撑一个耗时获取应用,在耗时获取系统100中,终端400(耗时获取设备)与终端500(目标设备)连接,而终端500通过网络300连接服务器200;其中,网络300可以是广域网或者局域网,又或者是二者的组合,服务器200通过网络300向终端500提供运行应用的数据支持。

终端400,用于获取页面跳转视频,页面跳转视频为终端500上显示的目标页面接收到目标操作时所录制的页面变化信息;对页面跳转视频进行抽帧,得到帧图像序列;依次获取帧图像序列中的相邻两帧图像之间的相似度;当相似度小于预设相似度时,确定相邻两帧图像中的前一帧图像所对应的帧为跳转结束帧;依据页面跳转视频的首帧与跳转结束帧之间的帧差,确定目标页面对应的页面跳转耗时。

在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(contentdeliverynetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端400和终端500可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本发明实施例中不做限制。

参见图2,图2是本申请实施例提供的图1中的终端的组成结构示意图,图2所示的终端400包括:至少一个控制装置410、存储器450、至少一个网络接口420和用户接口430。终端400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。

控制装置410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。

存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离控制装置410的一个或多个存储设备。

存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。

在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。

操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;

网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(wi-fi)、和通用串行总线(usb,universalserialbus)等;

呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);

输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。

在一些实施例中,本申请实施例提供的耗时获取装置可以采用软件方式实现,图2示出了存储在存储器450中的耗时获取装置455,其可以是程序和插件等形式的软件,包括以下软件模块:视频获取模块4551、视频抽帧模块4552、相似度获取模块4553、结束帧确定模块4554、耗时获取模块4555和梯度获取模块4556,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。

将在下文中说明各个模块的功能。

在另一些实施例中,本申请实施例提供的耗时获取装置可以采用硬件方式实现,作为示例,本申请实施例提供的耗时获取装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的耗时获取方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。

下面,将结合本申请实施例提供的终端的示例性应用和实施,说明本申请实施例提供的耗时获取方法。

参见图3,图3是本申请实施例提供的耗时获取方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。

s301、获取页面跳转视频。

在本申请实施例中,当测试目标设备上运行的应用,对目标设备上运行的应用中的目标页面的页面跳转耗时进行获取时,在目标设备上执行用于触发目标页面执行跳转处理的测试用例,或者通过其他设备执行跳转处理的测试用例并向目标设备发送跳转指令,又或者用户在目标页面上进行操作,目标设备也就接收到了作用在目标页面上的目标操作;同时,录制执行用于触发目标页面执行跳转处理的测试用例时目标设备上所显示的页面变化信息,耗时获取设备也就获得了页面跳转视频。

需要说明的是,页面跳转视频为目标设备上显示的目标页面接收到目标操作时所录制的页面变化信息,即页面跳转视频记录了响应目标操作,在目标页面上执行跳转处理的过程;这里,目标操作用于触发目标页面执行跳转处理,而跳转处理指跳转处理后的页面与目标页面之间存在差异的处理,可以是由目标页面向另一页面的跳转,还可以是改变目标页面上所显示的信息的处理,等等,本申请实施例对此不作具体限定。

还需要说明的是,耗时获取设备可以包括目标设备,也可以是与目标设备相互独立的设备,本申请实施例对此不作具体限定。

s302、对页面跳转视频进行抽帧,得到帧图像序列。

需要说明的是,耗时获取设备获得了页面跳转视频之后,由于页面跳转视频记录了页面跳转的过程,并且页面跳转视频的录制是在目标页面接收到目标操作时触发的;从而,页面跳转视频的首帧对应着目标页面的跳转开始时间;进而,通过对页面跳转视频中的图像进行识别,再结合页面跳转视频的首帧,就能够获取到目标页面的页面跳转耗时;从而,这里,耗时获取设备将页面跳转视频进行转换,将页面跳转视频抽帧为帧图像序列。易知,帧图像序列是指构成页面跳转视频的各个图像所对应的序列,且帧图像序列中每张图片所对应的序号用于表征在页面跳转视频中的显示顺序。

s303、依次获取帧图像序列中的相邻两帧图像之间的相似度。

需要说明的是,由于目标页面执行跳转处理时,目标页面上所显示的信息会发生变化,当页面上所显示的信息不再发生变化了,也就表明跳转结束;从而,通过分析帧图像序列中相邻帧图像之间是否相似,就能够确定跳转结束时间了。

在本申请实施例中,耗时获取设备按照帧图像序列中的各图像的序号,从首帧图像开始,依次获取帧图像序列中的相邻两帧图像之间的相似度,并对所获得的相似度进行判断,以根据判断结果确定该相邻两帧图像之间是否相似。

这里,相似度表征了相邻两帧图像之间的相似程度,当相似度越大,表明相邻两帧图像之间越不相似;而当相似度越小,表明相邻两帧图像之间越相似。另外,相邻两帧图像为帧图像序列中任一相邻两帧对应的图像。

s304、当相似度小于预设相似度时,确定相邻两帧图像中的前一帧图像所对应的帧为跳转结束帧。

在本申请实施例中,耗时获取设备中预先设置有预设相似度,或者耗时获取设备能够获取到预设相似度,该预设相似度用于衡量图像之间是否相似;当耗时获取设备将获得的相似度与预设相似度对比,以对相似度进行判断;如果确定相似度小于预设相似度,则表明此时获得的相邻两帧图像之间已经比较相似,此时,也就确定目标页面的跳转结束,从而,也就能够确定相邻两帧图像中的前一帧图像所对应的帧为跳转结束帧;而跳转结束帧对应着目标页面的跳转结束时间。

s305、依据页面跳转视频的首帧与跳转结束帧之间的帧差,确定目标页面对应的页面跳转耗时。

需要说明的是,由于页面跳转视频对应着帧率,也就明确了每秒包含的帧数量,从而能够确定相邻两帧之间所对应的时间信息;因此,当耗时获取设备获得了跳转结束帧之后,获取页面跳转视频的首帧与跳转结束帧之间的帧差,依据该帧差以及相邻两帧之间所对应的时间信息,比如,将帧差与相邻两帧之间所对应的时间信息相乘,也就确定了目标页面对应的页面跳转耗时。

可以理解的是,通过对目标页面接收到目标操作时所发生的页面变化信息进行录制,实现了对页面跳转过程的准确记录;进而依次对录制的页面跳转视频中相邻两帧图像之间的相似度进行判断,以确定出跳转结束时所对应的帧(跳转结束帧);并将页面跳转视频的首帧,与跳转结束时所对应的帧之间的帧差,确定为页面跳转耗时,实现了一种自动且准确地确定页面跳转耗时的过程,因此,能够提升获取页面跳转耗时的智能性和获得的页面跳转耗时的准确度。

参见图4,图4是本申请实施例提供的耗时获取方法的另一个可选的流程示意图;如图4所示,在本申请实施例中,s303(图4中未示出)可通过s3031-s3033实现;也就是说,耗时获取设备依次获取帧图像序列中的相邻两帧图像之间的相似度,包括s3031-s3033,下面对各步骤分别进行说明。

s3031、对依次获得的帧图像序列中的相邻两帧图像,分别进行预处理,得到两张待对比图像。

在本申请实施例中,为了提高所获得的相似度的准确度,耗时获取设备在获取相邻两帧图像之间的相似度的过程中,先对相邻两帧图像分别进行预处理,以减少图像噪声;这里,预处理的方式可以为高斯模糊处理,即将图像与正态分布做卷积;还可以是其他的降噪处理方式,本申请实施例对此不作具体限定。

这里,两张待对比图像为对相邻两帧图像分别进行预处理后所获得的两张图像。

s3032、对两张待对比图像进行差分处理,得到差分图像。

在本申请实施例中,耗时获取设备获得了两张待对比图像之后,对该两张待对比图像进行差分处理,以获取两张待对比图像之间的差异;这里,差分处理的结果即差分图像,用于表征两张待对比图像之间的差异。

s3033、基于统计出的差分图像中的预设差异像素点的数量,确定相似度。

在本申请实施例中,耗时获取设备获得了差分图像之后,由于差分图像中每个像素点所对应的值表征了相邻两帧图像在该像素点位置的差异,从而,差分图像中每个像素点所对应的值越大表明相邻两帧图像在该像素点位置上的差异越大;这里,用预设差异像素点表征相邻两帧图像在该像素点位置上存在差异,比如,白色像素点(对应的值为255);从而,耗时获取设备对差分图像中所包含的预设差异像素点的数量进行统计,并基于统计出的差分图像中的预设差异像素点的数量,确定相似度。

这里,耗时获取设备可以直接将统计出的差分图像中的预设差异像素点的数量作为相似度,也可以基于统计出的差分图像中的预设差异像素点的数量进行其他处理,来获得相似度,本申请实施例对此不作具体限定。

需要说明的是,除了采用差分处理方式获取相邻两帧图像之间的相似度的方式外,还可以采用其他的方式,比如,神经网络模型,即将相邻两帧图像输入至神经网络模型中,从而输出相邻两帧图像之间的相似度;本申请实施例对此不作具体限定。

继续参见图4,在本申请实施例中,s3032之前还包括s3034-s3036;也就是说,耗时获取设备对两张待对比图像进行差分处理,得到差分图像之前,该耗时获取方法还包括s3034-s3036,下面对各步骤分别进行说明。

s3034、获取操作位置信息。

这里,操作位置信息为目标操作所作用在目标页面的位置信息。比如,与目标设备的显示屏相对的位置信息,又比如与目标对象相对的位置信息。

s3035、基于操作位置信息和预设区域信息,分别对两张待对比图像进行区域截取,得到两张目标图像。

在本申请实施例中,操作位置信息可以为一像素点所对应的位置信息,耗时获取设备获得了操作位置信息之后,基于目标页面与两张待对比图像的大小比例,以及操作位置信息所对应的目标页面的位置信息,在两张待对比图像中分别确定与操作位置信息对应的目标位置信息;进而以目标位置信息为中心截取预设区域信息大小的区域,也就得到了与两张待对比图像一一对应的两张目标图像。

s3036、对两张目标图像进行差分处理,得到初始相似度。

在本申请实施例中,耗时获取设备获得了两张目标图像之后,对该两张目标图像进行差分处理,所获得的两张目标图像的差分结果即初始相似度。

这里,初始相似度表征两张目标图像之间的相似程度,并且,初始相似度越大两张目标图像之间越不相似,初始相似度越小两张目标图像之间越相似。

在本申请实施例中,s3032可通过s30321实现;也就是说,耗时获取设备对两张待对比图像进行差分处理,得到差分图像,包括s30321,其中:

s30321、当初始相似度大于或等于预设相似度时,对两张待对比图像进行差分处理,得到差分图像。

需要说明的是,耗时获取设备获得了初始相似度之后,将该初始相似度与预设相似度进行比较,如果初始相似度大于或等于预设相似度,表明两张目标图像不相似;而由于两张目标图像为两张待对比图像对应的局部区域,从而,两张目标图像不相似并不能表明两张待对比图像不相似;此时,耗时获取设备对两张待对比图像是否相似进行判断。

继续参见图4,耗时获取设备可以直接将两张目标图像所对应的初始相似度作为相邻两帧图像之间的相似度;也就是说,s3036之后,即耗时获取设备对两张目标图像进行差分处理,得到初始相似度之后,该耗时获取方法还包括:

s3037、将初始相似度,确定为相似度。

基于图4,易知,在本申请实施例中,s303可以通过s3031-s3033实现,也可以通过s3031、s3034-s3036、s30321和s3033实现,又可以通过s3031、s3034-s3037实现。

可以理解的是,耗时获取设备可以基于相邻两帧图像的整体(即两张待对比图像)确定相似度;还可以基于相邻两帧图像的局部(两张目标图像)确定相似度;又可以在基于相邻两帧图像的局部确定的相似度表征相邻两帧图像不相似时,再基于相邻两帧图像的整体确定相似度。如此,能够减少获取相邻两帧图像之间的相似度的计算量和准确度。

参见图5,图5是本申请实施例提供的耗时获取方法的再一个可选的流程示意图;如图5所示,在本申请实施例中,当相似度为统计出的差分图像中的预设差异像素点的数量时,s303之后还包括s306和s307;也就是说,耗时获取设备依次获取帧图像序列中的相邻两帧图像之间的相似度之后,该耗时获取方法还包括s306和s307,下面对各步骤分别进行说明。

s306、当相似度大于或等于预设相似度时,获取相邻两帧图像对应的相似度梯度。

在本申请实施例中,当相似度为基于相邻两帧图像的整体确定出的时,如果相似度大于或等于预设相似度,即相邻两帧图像不相似;耗时获取设备可以获取相邻两帧图像对应的相似度梯度,根据相似度梯度的变化信息消除微小变化(比如,图像背景变化)的影响。

s307、当相似度梯度大于预设梯度阈值时,确定相邻两帧图像中的前一帧图像对应的帧为跳转结束帧。

需要说明的是,如果相似度梯度大于预设梯度阈值,表明该相邻两帧图像的梯度变化较大,可以确定相邻两帧处页面从变化到不变的,从而,也就能够确定跳转结束;进而,此时,能够确定相邻两帧图像中的前一帧图像对应的帧为跳转结束帧。

在本申请实施例中,s302可通过s3021-s3025实现;也就是说,耗时获取设备对页面跳转视频进行抽帧,得到帧图像序列,包括s3021-s3025,下面对各步骤分别进行说明。

s3021、对页面跳转视频进行抽帧,得到初始帧图像序列。

在本申请实施例中,耗时获取设备获得了页面跳转视频之后,按照页面跳转视频的帧率,将页面跳转视频转换成图像序列,也就得到了初始帧图像序列。

示例性地,比如页面跳转视频为5秒钟长的视频,帧率为30帧/秒,则能够获得包括150张图片的初始帧图像序列。

s3022、对初始帧图像序列中的每个初始帧图像进行灰度化处理,得到灰度帧图像。

在本申请实施例中,为了获取能够表征图像的形态的特征,耗时获取设备先对初始帧图像序列中的每个初始帧图像进行灰度化处理,所获得的灰度化处理后的每个初始帧图像即灰度帧图像。

需要说明的是,灰度帧图像能够避免可见的条带失真,且灰度帧图像便于计算;通常灰度化处理是把含有亮度和色彩的彩色图像变化成灰度图像的过程,可以通过最大值法、加权平均值、取单通道值等等来实现灰度化处理。

s3023、对灰度帧图像进行二值化处理,得到二值帧图像。

需要说明的是,为了凸显每个初始帧图像的轮廓,耗时获取设备对灰度帧图像进行二值化处理,以使灰度帧图像呈现出明显的黑白效果;这里,二值化处理后的灰度帧图像即二值帧图像。

s3024、对二值帧图像进行边缘检测,得到边缘帧图像。

在本申请实施例中,耗时获取设备对二值帧图像进行边缘检测,以检测出出二值帧图像中亮度变化明显的点;这里,边缘检测的结果即边缘帧图像。

s3025、利用预设图像尺寸,对边缘帧图像进行缩放,得到与每个初始帧图像对应的帧图像,从而得到与初始帧图像序列对应的帧图像序列。

需要说明的是,耗时获取设备可以直接将边缘帧图像作为与每个初始帧图像对应的帧图像,也可以采用预设图像尺寸,对边缘帧图像进行缩放,得到与每个初始帧图像对应的帧图像;这里,当获得了初始帧图像序列中所有初始帧图像对应的帧图像之后,将所有初始帧图像对应的帧图像按照页面跳转视频中帧顺序进行组合,也就得到了与初始帧图像序列对应的帧图像序列。

可以理解的是,由于获取页面跳转视频时所采用的装置的分辨率不同,耗时获取设备依据预设图像尺寸对边缘帧图像进行缩放,使得缩放后的图像的大小一致,能够提高获取相似度的效率。

在本申请实施例中,s301可通过s3011和s3012实现;也就是说,耗时获取设备获取页面跳转视频,包括s3011和s3012,下面对各步骤分别进行说明。

s3011、通过控制装置执行目标测试用例时,向目标设备发送目标操作对应的操作指令,以及生成视频采集指令。

需要说明的是,当耗时获取设备包括目标设备、与目标设备独立的图像采集装置和控制装置时;当控制装置执行目标测试用例时,控制装置会向目标设备发送目标操作对应的操作指令,以使目标设备在目标页面上执行目标操作对应的操作指令;同时,控制装置还会生成视频采集指令,这里,视频采集指令用于指示图像采集装置采集目标设备上显示屏的页面变化信息。

s3012、目标设备在目标页面上执行目标操作对应的操作指令时,控制装置响应视频采集指令,控制图像采集装置,采集支架底座承载的目标设备上所显示的页面变化信息,得到页面跳转视频。

需要说明的是,控制装置生成了视频采集指令之后,响应该视频采集指令,控制图像采集装置对支架底座承载的目标设备上所显示的页面变化信息进行录制,也就获得了页面跳转视频。

这里,录制的页面跳转视频的时长为预设时长,比如为5秒;另外,控制装置分别与目标设备和图像采集装置建立了通信连接。

在本申请实施例中,还可以通过以下方式获取页面跳转视频:在目标页面上执行目标操作对应的操作指令时,通过控制装置接收到视频采集指令;以及控制装置响应视频采集指令,控制图像采集装置,采集支架底座承载的目标设备上所显示的页面变化信息,得到页面跳转视频。

需要说明的是,当耗时获取设备包括目标设备、与目标设备独立的图像采集装置和控制装置时;如果目标设备在目标页面上执行目标操作对应的操作指令,则目标设备会向控制设备发送视频采集指令,此时,控制装置也就接收到了视频采集指令。控制装置获得了视频采集指令之后,响应该视频采集指令,控制图像采集装置对支架底座承载的目标设备上所显示的页面变化信息进行录制,也就获得了页面跳转视频。

可以理解的是,耗时获取设备通过控制独立于目标设备的图像采集装置录制页面跳转视频,使得视频的录制不会影响目标设备上应用的运行,从而页面跳转视频准确地记录了目标页面的跳转过程,进而,基于该页面跳转视频能够准确地获得页面跳转耗时。

在本申请实施例中,s3012中耗时获取设备控制图像采集装置,采集支架底座承载的目标设备上所显示的页面变化信息,得到页面跳转视频之前,该耗时获取方法还包括s3013和s3014,下面对各步骤分别进行说明。

s3013、获取图像采集装置对应的采集区域图像。

在本申请实施例中,当控制图像采集装置进行页面跳转视频的录制时,为了所获得的页面跳转视频中每一帧图像均为正的,耗时获取设备先获取图像采集装置的采集区域中图像,也就得到了采集区域图像。

s3014、获取采集区域图像的图像校正信息。

需要说明的是,耗时获取设备中的控制装置对采集区域图像进行处理,以获得采集区域图像对应的最小外接矩形信息和旋转角度,也就获得了图像校正信息。

相应地,s3012中耗时获取设备控制图像采集装置,采集支架底座承载的目标设备上所显示的页面变化信息,得到页面跳转视频,包括s30121,其中:

s30121、依据图像校正信息,控制图像采集装置,采集支架底座承载的目标设备上所显示的页面变化信息,得到页面跳转视频。

需要说明的是,耗时获取设备中的控制装置获得了图像校正信息之后,以及该图像校正信息对录制参数进行调整,进而依据调整后的录制参数控制图像采集装置,采集支架底座承载的目标设备上所显示的页面变化信息,得到页面跳转视频。

另外,由于页面跳转视频是在目标页面上执行目标操作对应的操作指令时录制得到的,从而,页面跳转视频的首帧对应着目标页面跳转的开始时间。

可以理解的是,耗时获取设备在页面跳转视频录制前对录制参数进行调整,实现了通过一次调整就能够获得便于处理的图像,提高了视频处理效率,进而提升了耗时获取的效率。

在本申请实施例中,耗时获取设备中,支架底座通过支架与图像采集装置连接,图像采集装置的采集区域与支架底座的承载区域对应。

参见图6,图6是本申请实施例提供的一种示例性的耗时获取设备的组成示意图;如图6所示,耗时获取设备6-1中,支架底座6-11通过支架6-12与图像采集装置6-13连接,图像采集装置6-13的采集区域6-131与支架底座6-11的承载区域6-111对应;另外,耗时获取设备6-1中,还包括控制装置6-14,控制装置6-14分别与支架底座6-11上的目标设备6-15和图像采集装置6-13建立了连接。

在本申请实施例中,耗时获取设备中,支架包括第一子支架和与第二子支架;其中,第一子支架的一端用于连接支架底座,第二子支架的一端用于连接图像采集装置,第一子支架与第二子支架通过卡扣在对方支架上进行移动,以调整图像采集装置的采集区域;其中,第一子支架与第二子支架通过卡扣在对方支架上进行移动,指第一子支架的另一端通过卡扣在第二子支架上进行移动,和/或,第二子支架的另一端通过卡扣在第一子支架上进行移动。

参见图7,图7是本申请实施例提供的另一种示例性的耗时获取设备的组成示意图;如图7所示,基于图6,耗时获取设备6-1中,支架6-12包括第一子支架7-11和与第二子支架7-12;其中,第一子支架7-11的一端7-111用于连接支架底座7-2,第二子支架7-12的一端7-121用于连接图像采集装置6-13,第一子支架7-11通过卡扣7-4在第二子支架7-12上进行移动,第二子支架7-12通过卡扣7-4在第一子支架7-11上进行移动,以调整图像采集装置6-13的采集区域。

在本申请实施例中,s301可通过s3015和s3016实现;也就是说,耗时获取设备获取页面跳转视频,包括s3015和s3016,下面对各步骤分别进行说明。

s3015、在目标页面上执行目标操作对应的操作指令时,启动录屏应用。

在本申请实施例中,耗时获取设备包括目标设备,当目标设备目标页面上执行目标操作对应的操作指令时,启动录屏应用。这里,录屏应用用于对目标设备上显示的信息进行录制,比如,录屏软件。

s3016、利用启动的录屏应用,对目标设备上所显示的页面变化信息进行录制,得到页面跳转视频。

需要说明的是,由于页面跳转视频是在目标页面上执行目标操作对应的操作指令时录制得到的,从而,页面跳转视频的首帧对应着目标页面调整的开始时间。

可以理解的是,通过录屏应用记录目标页面的跳转过程,所获得的页面跳转视频是不存在倾斜角度的,从而页面跳转视频处理过程中无需再进行角度旋转,提升了视频处理的效率。

在本申请实施例中,参见图8,图8是本申请实施例提供的耗时获取方法的又一个可选的流程示意图;参见图8,在本申请实施例中,s305之后还包括s309;也就是说,耗时获取设备依据所述页面跳转视频的首帧与所述跳转结束帧之间的帧差,确定所述目标页面对应的页面跳转耗时之后,该耗时获取方法还包括s309,其中:

s309、根据页面跳转耗时,确定页面跳转测试结果。

需要说明的是,耗时获取设备获得了页面跳转耗时之后,可以显示该页面跳转耗时;还可以将该页面跳转耗时与之前获取的页面跳转耗时或预设跳转耗时进行对比,得到的对比结果即页面跳转测试结果,页面跳转测试结果也可以进行显示。

在本申请实施例中,针对目标页面的一次跳转变化,通过录制视频记录跳转变化的过程,实现了对目标页面的页面跳转耗时的自动且准确地获取;从而,能够批量高效获取各页面的跳转耗时,实现了准确地批量化处理。

下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。

示例性地,参见图9,图9是本申请实施例提供的一种示例性的获取耗时的流程示意图;如图9所示,包括如下步骤:

s901、录制自动化测试用例。

需要说明的是,在手机(目标设备)上对游戏应用进行测试,为获取一游戏页面(目标页面)的跳转耗时,录制对游戏页面点击(目标操作)的自动化测试用例。

s902、对摄像头(图像采集装置)采集区域的图像进行图像校正。

需要说明的是,将手机10-1放置在图10示出的支架底座10-2的承载区域上,电脑10-3检测摄像头10-4采集区域的图像(采集区域图像);如图11所示的图像11-1,图像11-1中区域11-11才是最需要采集的信息,且区域11-1与采集区域边缘是存在夹角的。从而,电脑10-3(控制装置)求得采集区域的图像的最小外接矩形,即图11中区域11-11,以及和旋转角度,根据最小外接矩形和旋转角度进行图像校正,图像校正后的采集区域的图像如图12所示的图像12-1。

这里,电脑所采用的硬件环境为,“windows10”操作系统,“inteli7-77003.6ghz”的处理器,16gb的内存。

s903、在电脑上执行自动化测试用例时,向手机发送操作指令,并控制摄像头对手机响应操作指令所发生的页面变化信息进行视频录制。

需要说明的是,继续参见图10,当在电脑10-3针对游戏应用执行自动化测试用例时,电脑10-3向手机10-1发送点击指令,并生成视频录制信号(视频采集指令),从而,电脑10-3响应视频录制信号控制摄像头10-4,针对手机10-1响应点击指令时所发生的页面变化信息,以30帧/秒的帧率录制5秒钟长的视频,也就得到了本申请实施例中的页面跳转视频。

还需要说明的是,当录制了多个自动化化测试用例时,通过执行多个自动化测试用例,可以录制对应的多个视频。示例性地,参见图13,当自动化执行30个测试用例时,也就录制出了30个视频:表情_1.avi、表情_2.avi、表情_3.avi、表情_4.avi、表情_5.avi、表情_6.avi、兵团_1.avi、仓库_1.avi、仓库_2.avi、仓库_3.avi、仓库_4.avi、仓库_5.avi、仓库_6.avi、仓库_7.avi、仓库_8.avi、仓库_9.avi、仓库_10.avi、仓库_11.avi、仓库_12.avi、仓库_13.avi、仓库_14.avi、仓库_15.avi、仓库_16.avi、仓库_17.avi、仓库_18.avi、仓库_19.avi、仓库_20.avi、仓库_21.avi、仓库_22.avi和仓库_23.avi。

s904、视频抽帧,得到初始帧图像序列。

这里,电脑对录制的视频进行抽帧处理,针对s903中帧率为30帧/秒的5秒钟长的视频,也就得到了150张图像构成的序列。

s905、对初始帧图像序列进行图像校正,得到图像帧序列。

需要说明的是,电脑依次对初始帧图像序列中的每张图像进行灰度化处理、二值化处理、边缘检测处理和缩放处理,也就完成了对初始帧图像序列的图像校正。其中,图像帧序列中相邻两帧图像的一张图像如图14中的图像14-1所示,另一张图像如图15中图像15-1所示。

s906、依次对图像帧序列的相邻两帧图像对应的点击处的两个局部区域(两张目标图像)进行差分处理,得到局部相似度(初始相似度)。

需要说明的是,首先,电脑根据预设参数对相邻两帧图像分别进行高斯模糊处理(预处理);

然后,电脑对相邻两帧图像分别对应的以点击位置为中心的200*200的两矩形区域作差求绝对值,得到的图像进行二值化处理得到一张黑白二值图像;

最后,电脑利用一维向量统计黑白二值图像中白色像素点(预设差异像素点)的个数,也就得到了局部相似度向量,进而依据局部相似度向量得到局部相似度。

s907、判断局部相似度是否小于相似度阈值;如果是,执行s908;如果否,执行s909。

s908、确定跳转结束帧。

s909、对相邻两帧图像进行差分处理,得到全局相似度。

这里,电脑对相邻两帧图像进行差分处理,得到全局相似度的过程与s906中描述的获取局部相似度的过程类似,本申请实施例在此不再赘述。

示例性地,对图14中图像14-1和图15中的图像15-1进行差分处理,所获得的差分结果如图16中的图像16-1所示。

s910、判断全局相似度是否小于相似度阈值;如果是,执行s908;如果否,执行s911。

s911、获取相邻两帧图像对应的相似度梯度。

s912、判断相似度梯度是否大于预设梯度阈值;如果是,执行s908;如果否,执行s906。

s913、依据结束帧与首帧的帧差,得到页面跳转耗时。

可以理解的是,本申请实施例所提供的耗时获取方法,从测试用例的执行到耗时的获取,均是自动化执行的,大幅度降低了人工参与度,提升了智能性,并且对测试的应用实现了零入侵,误差约为30毫秒,精度高;另外,采用摄像头录制页面跳转过程,对手机性能无影响。此外,由于获得耗时的效率较高,从而能够帮助测试人员快速定位存在问题的页面。

下面继续说明本申请实施例提供的耗时获取装置455的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的耗时获取装置455中的软件模块可以包括:

视频获取模块4551,用于获取页面跳转视频,所述页面跳转视频为目标设备上显示的目标页面接收到目标操作时所录制的页面变化信息;

视频抽帧模块4552,用于对所述页面跳转视频进行抽帧,得到帧图像序列;

相似度获取模块4553,用于依次获取所述帧图像序列中的相邻两帧图像之间的相似度;

结束帧确定模块4554,用于当所述相似度小于预设相似度时,确定所述相邻两帧图像中的前一帧图像所对应的帧为跳转结束帧;

耗时获取模块4555,用于依据所述页面跳转视频的首帧与所述跳转结束帧之间的帧差,确定所述目标页面对应的页面跳转耗时。

在本申请实施例中,所述相似度获取模块4553,还用于对依次获得的所述帧图像序列中的所述相邻两帧图像,分别进行预处理,得到两张待对比图像;对所述两张待对比图像进行差分处理,得到差分图像;基于统计出的所述差分图像中的预设差异像素点的数量,确定所述相似度。

在本申请实施例中,所述相似度获取模块4553,还用于获取操作位置信息,所述操作位置信息为所述目标操作所作用在所述目标页面的位置信息;基于所述操作位置信息和预设区域信息,分别对所述两张待对比图像进行区域截取,得到两张目标图像;对所述两张目标图像进行差分处理,得到初始相似度;

在本申请实施例中,所述相似度获取模块4553,还用于当所述初始相似度大于或等于所述预设相似度时,对所述两张待对比图像进行差分处理,得到所述差分图像。

在本申请实施例中,所述耗时获取装置455还包括梯度获取模块4556,用于当所述相似度大于或等于所述预设相似度时,获取所述相邻两帧图像对应的相似度梯度;当所述相似度梯度大于预设梯度阈值时,确定所述相邻两帧图像中的所述前一帧图像对应的帧为所述跳转结束帧。

在本申请实施例中,所述相似度获取模块4553,还用于将所述初始相似度,确定为所述相似度。

在本申请实施例中,所述视频抽帧模块4552,还用于对所述页面跳转视频进行抽帧,得到初始帧图像序列;对所述初始帧图像序列中的每个初始帧图像进行灰度化处理,得到灰度帧图像;对所述灰度帧图像进行二值化处理,得到二值帧图像;对所述二值帧图像进行边缘检测,得到边缘帧图像;利用预设图像尺寸,对所述边缘帧图像进行缩放,得到与所述每个初始帧图像对应的帧图像,从而得到与所述初始帧图像序列对应的所述帧图像序列。

在本申请实施例中,所述视频获取模块4551,还用于通过控制装置执行目标测试用例时,向所述目标设备发送所述目标操作对应的操作指令,以及生成视频采集指令;所述目标设备在所述目标页面上执行所述目标操作对应的操作指令时,所述控制装置响应所述视频采集指令,控制图像采集装置,采集支架底座承载的所述目标设备上所显示的页面变化信息,得到所述页面跳转视频;其中,所述控制装置分别与所述目标设备和所述图像采集装置建立了通信连接。

在本申请实施例中,所述视频获取模块4551,还用于获取所述图像采集装置对应的采集区域图像;获取所述采集区域图像的图像校正信息。

在本申请实施例中,所述视频获取模块4551,还用于依据所述图像校正信息,控制所述图像采集装置,采集所述支架底座承载的所述目标设备上所显示的页面变化信息,得到所述页面跳转视频。

在本申请实施例中,所述支架底座通过支架与所述图像采集装置连接,所述图像采集装置的采集区域与所述支架底座的承载区域对应。

在本申请实施例中,所述支架包括第一子支架和与第二子支架;其中,所述第一子支架的一端用于连接所述支架底座,所述第二子支架的一端用于连接所述图像采集装置,所述第一子支架与所述第二子支架通过卡扣在对方支架上进行移动,以调整所述图像采集装置的所述采集区域。

在本申请实施例中,所述视频获取模块4551,还用于在所述目标页面上执行所述目标操作对应的操作指令时,启动录屏应用;利用启动的录屏应用,对所述目标设备上所显示的页面变化信息进行录制,得到所述页面跳转视频。

本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的耗时获取方法。

本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的耗时获取方法,例如,如图3示出的耗时获取方法。

在一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hypertextmarkuplanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。

作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

综上所述,通过本申请实施例,通过对目标页面接收到目标操作时所发生的页面变化信息进行录制,实现了对页面跳转过程的准确记录;进而依次对录制的页面跳转视频中相邻两帧图像之间的相似度进行判断,以确定出跳转结束时所对应的帧(跳转结束帧);并将页面跳转视频的首帧,与跳转结束时所对应的帧之间的帧差,确定为页面跳转耗时,实现了一种自动准确地确定页面跳转耗时的过程,因此,能够提升获得的页面跳转耗时的准确度,以及获取页面跳转耗时的智能性。

以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1