一种界面加载时间计算方法和装置与流程

文档序号:12733470阅读:177来源:国知局
一种界面加载时间计算方法和装置与流程

本发明涉及软件技术领域,特别是涉及一种界面加载时间计算方法和一种界面加载时间计算装置。



背景技术:

随着智能手机等移动终端的发展,越来越多的用户开始通过手机等设备浏览网页,以获取用户所需的信息。

用户使用手机访问网站是基于手机浏览器所获取的网页实现的。通常情况下,用户访问网站的页面全部加载完毕时,总页面高度可能有一屏到多屏不等,总的页面加载时间要比首屏加载时间长很多,但是首屏加载时间是用户对一个浏览器加载性能的重要体验因素,首屏加载时间是指手机等设备的浏览器全屏区域充满网站页面所需的时间。当网站页面充满首屏区域后,用户就可以看到网页内容并进行相应的点击、屏幕滚动等操作,而不必等到网站的所有网页都加载完成。因而,从用户发起访问开始,到首屏内容加载完成这段时间,对用户的使用体验至关重要。

而对于手机浏览器网页首屏加载时间的测量也是至关重要的,在先技术中,通常采用高速摄像机对整个加载操作过程进行拍照,并记录每张照片的拍摄时间,然后人工的在拍摄的照片中对比查找预先拍摄好的起始和结束图片,最后将这两张照片的拍摄时间相减,以获得网页的首屏加载时间。但是高速摄像机受外界因素(如距离、光度等)的影响,使得拍摄得到的照片具有一定的时间间隔,进而导致测试的结果不准确,并且,采用人工对比查找预先拍摄好的起始和结束图片,导致测试过程耗费的时间比较长,整个测试步骤繁琐。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的界面加载时间计算方法和相应的界面加载时间计算装 置。

依据本发明的一个方面,提供了一种界面加载时间计算方法,包括:

与待测试终端建立同步连接;

通过所述同步连接,同步待测试终端的屏幕图像;

在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

如果匹配,则记录同步的第二时间点;

根据第一时间点和第二时间点,计算所述界面的加载时间。

优选地,在所述计算同步的屏幕图像与预置的第一图像是否匹配的步骤之前,还包括:

获取待测试的界面的所述第一图像中的至少一个位置的子图像。

优选地,所述计算同步的屏幕图像与预置的第一图像是否匹配的步骤,包括:

从所述同步的屏幕图像中获取与各预定位置的子图像;所述预定位置与所述界面的加载完毕之后的屏幕图像中的至少一个位置相同;

判断各预定位置的子图像与第一图像的相同位置子图像是否完全匹配。

优选地,所述与待测试终端建立同步连接的步骤,包括:

通过本地安装的STF远程控制平台,与所述待测试终端建立同步连接。

优选地,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

获取所述界面加载过程中的待测试终端的至少一项性能指标。

优选地,所述性能指标包括:CPU占有率、内存占有率、待测试终端 流量、待测试终端的电量其中至少一项。

优选地,在所述通过所述同步连接,同步待测试终端的屏幕图像的步骤之前,还包括:

通过STF远程控制平台,向待测试终端安装测试安装包;所述界面属于所述测试安装包安装后的应用的界面。

优选地,在所述根据第一时间点和第二时间点,计算所述界面的加载时间的步骤之后,还包括:

判断是否对所述安装测试包的应用的界面测试完成;

如果测试完成,则判断是否还存在未测试的测试安装包;

如果存在,则继续安装一未测试的测试安装包,进入通过所述同步连接,同步待测试终端的屏幕图像的步骤。

优选地,在所述根据第一时间点和第二时间点,计算所述界面的加载时间的步骤之后,还包括:

将所述加载时间以对应所述界面的界面标识进行记录。

优选地,所述针对一界面的加载操作包括:针对一网页的加载操作;

进一步的,所述待测试终端同步处理所述加载操作包括:

所述待测试终端同步发送所述针对网页的加载操作。

优选地,所述界面的界面标识包括:网页的网址信息。

优选地,在所述将所述加载时间以对应所述界面的界面标识进行记录的步骤之后,还包括:

将所述界面标识的加载时间与预定的时间阈值进行比较;

当所述加载时间小于等于预定的时间阈值,则确定所述界面标识的加载时间符合要求;

当所述加载时间大于预定的时间阈值,则确定所述界面标识的加载时间不符合要求,并生成报警信息。

依据本发明的另一个方面,还公开了一种界面加载时间计算装置,包括:

同步连接建立模块,适于与待测试终端建立同步连接;

屏幕图像同步模块,适于通过所述同步连接,同步待测试终端的屏幕图像;

第一时间点记录模块,适于在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

图像匹配计算模块,适于在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

第二时间点记录模块,适于在同步的屏幕图像与预置的第一图像匹配时,记录同步的第二时间点;

加载时间计算模块,适于根据第一时间点和第二时间点,计算所述界面的加载时间。

优选地,在所述图像匹配计算模块之前,还包括:

子图像获取模块,适于获取待测试的界面的所述第一图像中的至少一个位置的子图像。

优选地,所述图像匹配计算模块的步骤,包括:

预定位置的子图像获取子模块,适于从所述同步的屏幕图像中获取与各预定位置的子图像;所述预定位置与所述界面的加载完毕之后的屏幕图像中的至少一个位置相同;

相同位置子图像匹配判断模块,适于判断各预定位置的子图像与第一图像的相同位置子图像是否完全匹配。

优选地,所述同步连接建立模块包括:

同步连接建立子模块,适于通过本地安装的STF远程控制平台,与所述待测试终端建立同步连接。

优选地,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

性能指标获取子模块,适于获取所述界面加载过程中的待测试终端的至少一项性能指标。

优选地,所述性能指标包括:CPU占有率、内存占有率、待测试终端流量、待测试终端的电量其中至少一项。

优选地,在所述屏幕图像同步模块之前,还包括:

测试安装包安装模块,适于通过STF远程控制平台,向待测试终端安装测试安装包;所述界面属于所述测试安装包安装后的应用的界面。

优选地,在所述加载时间计算模块之后,还包括:

测试完成判断模块,适于判断是否对所述测试安装包的应用的界面测试完成;

测试安装包判断模块,适于判断是否还存在未测试的测试安装包;

未测试安装包安装模块,适于在存在未测试的测试安装包时,继续安装一未测试的测试安装包,进入屏幕图像同步模块。

优选地,在所述加载时间计算模块之后,还包括:

界面标识记录模块,适于将所述加载时间以对应所述界面的界面标识进行记录。

优选地,所述针对一界面的加载操作包括:针对一网页的加载操作;

进一步的,所述待测试终端同步处理所述加载操作包括:

所述待测试终端同步发送所述针对网页的加载操作。

优选地,所述界面的界面标识包括:网页的网址信息。

优选地,在所述界面标识记录模块之后,还包括:

比较模块,适于将所述界面标识的加载时间与预定的时间阈值进行比较;

加载时间符合要求确定模块,适于当所述加载时间小于等于预定的时间阈值时,确定所述界面标识的加载时间符合要求;

报警信息生成模块,适于当所述加载时间大于预定的时间阈值时,确定所述界面标识的加载时间不符合要求,并生成报警信息。

依据本发明的另一个方面,还公开了一种界面加载时间计算设备,包括:

存储器,加载有多条可执行指令;

处理器,执行所述多条可执行指令;所述多条指令包括执行以下步骤 的方法:

与待测试终端建立同步连接;

通过所述同步连接,同步待测试终端的屏幕图像;

在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

如果匹配,则记录同步的第二时间点;

根据第一时间点和第二时间点,计算所述界面的加载时间。

根据本发明实施例的界面加载时间计算方案,通过与待测试终端建立同步连接,以同步待测试终端的屏幕图像,在屏幕图像中触发针对一界面的加载操作时,记录触发该加载操作的第一时间点,并计算同步的屏幕图像与预置的第一图像是否匹配,该第一图像为界面加载完毕时的屏幕图像,在匹配时,则记录同步的第二时间点,然后根据第一时间点和第二时间点,计算该界面的加载时间。相对在先技术中,本发明实施例的测试方案不受外界因素的影响,并且无需人工对比查找预先拍摄好的起始和结束图片,可以使得获取的首屏加载时间比较准确,且节省了测试过程的时间,由此解决了在先技术中测试结果不准确,测试过程耗时较长、测试步骤繁琐的问题,取得了获取准确的测试结果,减少了测试使用时间,避免了用户的繁琐操作的有益效果。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于 本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了根据本发明一个实施例的界面加载时间计算方法的步骤流程图;

图2示出了根据本发明一个实施例的界面加载时间计算方法的步骤流程图;

图3示出了根据本发明一个实施例的界面加载时间计算装置的结构框图;

图4示出了根据本发明一个实施例的界面加载时间计算装置的结构框图;及

图5示出了根据本发明一个实施例的界面加载时间计算设备的结构框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

实施例一

参照图1,示出了根据本发明一个实施例的一种界面加载时间计算方法实施例的步骤流程图,具体可以包括如下步骤:

步骤S100:与待测试终端建立同步连接。

本发明实施例可以应用于针对各种待测试终端的首屏界面加载时间进行测试。

本发明实施例中,待测试终端可以包括:手机、pad等终端,在需要对待测试终端的首屏加载时间进行测试时,可以先建立测试终端与待测试终 端的同步连接,该同步连接用于同步待测试终端的屏幕图像。

在本发明实施例中,测试终端可以包括个人电脑、笔记本电脑等终端。

在实际应用中,待测试终端和测试终端可以通过数据线连接,然后待测试终端可以通过该数据线建立同步连接。当然,前述通过数据线连接,可以通过数据线连接待测试终端和测试终端的USB(Universal Serial Bus,通用串行总线)接口。前述通过数据线连接还可以采用其他方式进行连接,本发明实施例不对其加以限制。

步骤S110:通过所述同步连接,同步待测试终端的屏幕图像。

在测试终端与待测试终端建立同步连接之后,测试终端可以同步待测试终端所显示的屏幕图像,在待测试终端显示的屏幕图像发生变化时,测试终端显示的屏幕图像也随着待测试终端的屏幕图像变化同步发生改变。

步骤S120:在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作。

本发明实施例中,测试终端在同步待测试终端的屏幕图像之后,可以在测试终端的屏幕图像中触发针对一个界面的加载操作,例如,点击屏幕图像上的“NBA”按钮,以显示对应于NBA的相关页面。触发该加载操作时对应的时间点即为第一时间点,并将该时间点进行记录。该第一时间点为测试终端的系统时间。

由于待测试终端是与测试终端同步进行的,因而当测试终端中触发所显示的屏幕图像中的针对一界面的加载操作,那么待测试终端可以同步该加载操作,然后待测试终端可以跳转到该加载操作对应的页面中。

而由于待测试终端与测试终端建立了同步连接,那么待测试终端的当前屏幕图像则同步到测试终端,因而待测试终端加载界面的过程的所有屏幕图像也同步至测试终端。

在实际应用中,由于待测试终端同步了测试终端的屏幕图像,那么在测试终端中点击了某个按钮,则该点击操作会同步到待测试终端,从而实现了在测试终端中触发针对一界面的加载操作的过程。比如测试终端当前 同步的待测试终端的屏幕图像是系统主界面,当在测试终端中点击了一个APP(application),则该点击操作同步到待测试终端,待测试终端则接收到启动该APP的请求,那么待测试终端启动该APP。继而待测试终端的该APP的启动过程的屏幕图像会同步到测试终端中。当然,对该APP的其他操作类似,比如在APP启动后。在测试终端中点击APP中的某个控件,则待测试终端同步该点击操作,从而加载该控件对应的页面,该页面的加载过程则会同步到测试终端。

当然,在本发明实施例中可以预先配置测试哪个界面的加载过程,然后测试终端根据该配置自动执行。

优选地,所述针对一界面的加载操作包括:针对一网页的加载操作;

进一步的,所述待测试终端同步处理所述加载操作包括:

子步骤A11,所述待测试终端同步发送所述针对网页的加载操作。

本发明实施例中,当针对一界面的加载操作为针对一个网页的加载操作时,相应的,测试终端触发该网页的加载操作时,可以同步向待测试终端发送该加载操作,待测试终端在接收到该加载操作之后,可以与测试终端同步触发该加载操作,并同步处理该加载操作,也即测试终端和待测试终端对一个网页的加载操作是同步进行的。

在实际应用中,本发明实施例可以对手机浏览器或者平板浏览器加载一网页的首屏的加载时间进行测试。那么测试终端上述针对一网页的加载操作包括:

1、在浏览器的地址栏中输入所述网页的URL(Uniform Resource Locator,统一资源定位符);

2、点击确定按钮。

那么该加载操作则同步到待测试终端的浏览器中,该浏览器则生成网页请求,向web服务器请求网页内容进行加载。待测试终端的上述页面的加载过程中的屏幕数据则同步到测试终端。

步骤S130:在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完 毕时的屏幕图像;如果匹配,则执行步骤S140。

本发明实施例中,第一图像是指根据触发的针对一界面加载操作后,待测试终端对界面的加载。

由于待测试终端的屏幕图像可以通过前述同步连接一直同步到测试终端中,那么待测试终端在对一界面的加载过程的屏幕图像也会同步到测试终端中。那么对于测试终端来说,其可以对同步得到的屏幕图像,然后截取该屏幕图像,以与预置该界面加载完毕时的第一图像进行匹配,如果两者图像相同,则进入步骤140;如果不匹配,则说明待测试终端未将该界面加载完毕,则继续进行图像匹配。

优选地,在所述步骤S130之前,还可以包括:

步骤S128:获取待测试的界面的所述第一图像中的至少一个位置的子图像。

对于一个界面,可以预先获取该界面加载完毕后的屏幕图像,然后从该屏幕图像中选择一个或多个位置的子图像作为标志点。该子图像比如加载完毕的界面中的某些按钮、组件等。

为了屏幕图像的匹配的精确度,可以选择多个子图像作为标志点。

比如对于界面A,在其加载完毕的图像中选择位置A1的子图像M1、位置A1的子图像M2、位置M3的子图像M3、位置A4的子图像M4,以作为标志点。

根据所述步骤S128,所述步骤S130可以包括:

子步骤S1302:从所述同步的屏幕图像中获取与各预定位置的子图像;所述预定位置与所述界面的加载完毕之后的屏幕图像中的至少一个位置相同;

子步骤S1304:判断各预定位置的子图像与第一图像的相同位置子图像是否完全匹配。

本发明实施例中,针对一界面的加载操作,可以获取到所测试的界面对应的第一图像中的一个或者多个位置的子图像,进而,从同步的屏幕图像中获取与各预定位置的子图像位置相同的子图像,其中,该预定位置与 界面加载完毕之后的屏幕图像中的至少一个位置是相同。

比如前述例子,可以对同步得到的屏幕图像,在位置A1截取图像B1,在位置A2截取图像B2,在位置A3截取图像B3、在位置A4截取图像B4.

然后与预置的位置A1的子图像M1、位置A1的子图像M2、位置M3的子图像M3、位置A4的子图像M4。将相同位置的子图像进行匹配,即将B1与M1匹配,将B2与M2匹配,将B3与M3匹配,将B4与M4匹配。如果完全匹配上,则说明标志点完全匹配上,进而说明界面A加载完毕。如果存在至少一个未匹配上,则说明书界面A还未加载完毕,继续在位置A1、A2、A3、A4截取图像进行匹配。在本发明实施例中两次截取的时间间隔可以精度要求设定,比如设定为2ms。

在本发明实施例中,对于子图像优选的可以选择界面中各组件对应的图像,从而可以方便用sikuli编写图像识别程序。在本发明实施例中对于图像的截取和匹配逻辑可以sikuli编写图像识别程序,并提供图像识别接口,在触发针对一界面的加载操作后,调用该图像识别接口执行步骤S130-S160。

一个sikuli图像识别程序片段示例如下所示:

while(1):

if exists("001.png")://如果存在001.png的图片

click("001.png")//点击001.png图片所对的组件

type("002.png","a.apk")//向002.png图片对应的组件输入“a.apk”

click(Pattern("003.png").similar(0.78))//点击和003.png图片相似度为78%的图片对应的组件

break;

从而根据获取到的各预定位置的子图像于第一图像中相同位置的子图像进行比较,以确定是否完全匹配,如果完全匹配,则执行步骤S140。

优选地,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

子步骤B11,获取所述界面加载过程中的待测试终端的至少一项性能指标。

本发明实施例中,STF远程控制平台还可以利用Python语言编写的获取程序,以获取在首屏界面加载的过程中的待测试终端的各性能指标,其中,待测试终端的性能指标可以包括:CPU占有率、内存占有率、待测试终端流量、待测试终端的电量等其中的一项或者多项。

通过获取待测试终端的各性能指标,可以在对测试首屏加载时间的同时,对待测试终端的各性能进行测试。

在本发明实施例中,可以使用Python编写首屏加载过程中获取手机各项性能指标的程序。并提供性能指标获取接口,在触发针对一界面的加载操作后,调用该性能指标获取接口执行B11。

一个Python性能监测程序片段示例如下所示:

var=os.popen('adb shell top-n 1|findstr'+package).read()

通过该方法调用adb shell命令返回手机的性能指标集合。

cpuRate=list[2].strip("%").strip()

memRate=list[6].strip("K").strip()

然后从集合中分别取第三列和第六列,它们对应的值即为cpu使用率和内存使用率。

步骤S140:记录同步的第二时间点。

在步骤S130中,如果确定同步的屏幕图像与预置的该界面的第一图像相同,表明待测终端对该界面加载完毕,那么本发明实施例则可以获取测试终端此时的第二时间点。该第二时间点可为测试终端的系统时间。

步骤S150:根据第一时间点和第二时间点,计算所述界面的加载时间。

本发明实施例中,在利用一个界面加载测试加载时间的情况下,测试终端可以根据记录的第一时间点和第二时间点,将第二时间点减去第一时间点,则可以计算出对应的界面加载时间,例如,某界面在加载的过程中,对应的第一时间点为09:00:02,第二时间点为09:00:06,则可以计算出 界面的加载时间为4秒,该界面的加载时间也就是该界面的首屏加载时间。

优选地,在所述步骤S150之后,还可以包括:

步骤S160:将所述加载时间以对应所述界面的界面标识进行记录;

本发明实施例中,当界面的界面标识针对的是网页的网址信息时,测试终端可以将针对该网页的加载时间于该网页的网址信息进行记录。便于技术人员对界面的加载时间进行后续处理。

优选地,在所述步骤S160之后,还可以包括:

步骤S170:将所述界面标识的加载时间与预定的时间阈值进行比较;

步骤S180:当所述加载时间小于等于预定的时间阈值,则确定所述界面标识的加载时间符合要求;

步骤S190:当所述加载时间大于预定的时间阈值,则确定所述界面标识的加载时间不符合要求,并生成报警信息。

本发明实施例中,由于针对不同的界面其所对应的加载时间可能是不相同的,因而,可以针对不同类型的界面设置该类型界面的加载时间的预定时间阈值。例如,针对网页类的加载时间的预定时间阈值可以设置为2s等等。

在实际应用中,本领域技术人员可以根据实际情况设置针对各类型界面的预定的时间阈值,本发明对此不加以限制。

且测试终端针对各类型界面的加载时间都与该界面的界面标识进行了记录,因而,可以依据界面的界面标识获取对应该界面标识的加载时间,并将该界面标识的加载时间与该界面对应的类型的预定的时间阈值进行比较,当该加载时间小于或者等于预定的时间阈值时,说明该界面标识的加载时间符合要求。如果该界面标识对应界面的加载时间大于预定的时间阈值时,则该界面标识对应界面的加载时间是不符合要求,可能是界面标识对应的界面出现异常,也可能是测试终端的网络出现异常等等,进而根据超标的界面标识生成对应的报警信息,在生成报警信息之后,可以根据报警信息进行相应的异常检测。

本发明实施例中通过与待测试终端建立同步连接,以同步待测试终端 的屏幕图像,在屏幕图像中触发针对一界面的加载操作时,记录触发该加载操作的第一时间点,并计算同步的屏幕图像与预置的第一图像是否匹配,该第一图像为界面加载完毕时的屏幕图像,在匹配时,则记录同步的第二时间点,然后根据第一时间点和第二时间点,计算该界面的加载时间。解决了在先技术中测试结果不准确,测试过程耗时较长、测试步骤繁琐的问题,取得了获取准确的测试结果,减少了测试使用时间,避免了用户的繁琐操作的有益效果。

实施例二

参照图2,示出了根据本发明一个实施例的一种界面加载时间计算方法实施例的步骤流程图,具体可以包括如下步骤:

步骤S200:通过本地安装的STF远程控制平台,与所述待测试终端建立同步连接。

本发明实施例可以应用于通过STF(Smartphone Test Farm)远程控制平台将待测试终端与计算机进行连接,并通过计算机来操作待测试终端。

STF远程控制平台是一个远程控制平台,用于对手机等待测试终端,在测试终端的浏览器网页上进行远程操控。在STF安装完成之后,可以通过控制台运行命令以启动STF远程控制平台,当STF远程控制平台启动之后,则可以在与待测试终端连接的测试终端浏览器中输入远程待测试终端对应的端口号,以建立实现测试终端与待测试终端的同步连接。

测试终端可以通过本地的浏览器访问本地安装的STF远程控制平台,然后通过本地的STF平台与待测试终端建立同步连接,STF远程控制平台自带的Minicap工具可以提供一个socket(套接字)接口,以将待测试终端的屏幕图像的数据实时传输到测试终端,以在测试终端中对待测试终端的屏幕图像数据进行记录和保存。测试终端中对屏幕图像的操作也可以通过socket同步到待测试终端中,使待测试终端实现同步操作。

在本发明实施例中,可以有多个待测试终端连接到测试终端,测试终端可以根据指令选择指定的测试终端进行测试。

步骤S210:通过STF远程控制平台,向待测试终端安装测试安装包;所述界面属于所述测试安装包安装后的应用的界面。

本发明实施例中,操控计算机通过STF远程控制平台,向待测试终端安装测试安装包,每个测试安装包中都可以包括多个用于测试的界面,可以从该测试安装包中选择符合要求的待测试界面以作为测试使用。其中,该测试安装包如APP的APK(Android Package,安卓包)安装包。

相应的,后续在待测试终端触发针对一界面的加载操作所要加载的界面,即为对应于测试安装包安装完成后的测试安装包中应用的界面。

步骤S220:通过所述同步连接,同步待测试终端的屏幕图像。

步骤S230:在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作。

步骤S240:在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;如果匹配,则执行步骤S250。

本发明实施例中,测试终端可以同步待测试终端的屏幕图像,并在操控待测试终端的屏幕图像中触发针对一界面的加载操作后,记录触发该加载操作的第一时间点。

在待测试终端根据界面加载操作处理的过程中,可以将测试终端同步的屏幕图像与预置的第一图像进行比对,以确定二者是否匹配,如果匹配,则执行步骤S250。

优选地,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

子步骤B11,获取所述界面加载过程中的待测试终端的至少一项性能指标。

本发明实施例中,STF远程控制平台还可以利用Python语言编写的获取程序,以获取在首屏界面加载的过程中的待测试终端的各性能指标,其中,待测试终端的性能指标可以包括:CPU占有率、内存占有率、待测试终端流量、待测试终端的电量等其中的一项或者多项。

通过获取待测试终端的各性能指标,可以在对测试首屏加载时间的同时,对待测试终端的各性能进行测试。

在本发明实施例中,可以使用Python编写首屏加载过程中获取手机各项性能指标的程序

步骤S250:记录同步的第二时间点。

本发明实施例中,对应于在待测试终端安装测试安装包后,该测试安装包中的应用的界面是对应于触发针对一界面的加载操作所对应的界面,可以选择特定的界面作为首屏界面,并在测试安装包中为这些应用的界面添加标志点。之后可以通过对首屏加载的图像与选定的标识所对应的应用的界面进行对比,如果没有匹配,则进行加载;如果选定的标志点加载完成,则表示针对该界面的加载操作的加载完成,界面加载完成时的时间点即为第二时间点。

相应的,测试终端可以同步待测试终端的屏幕图像及相应的加载操作,并与待测试终端同步进行相同界面的加载操作,在界面的加载操作的整个过程中,测试终端可以将该界面加载的第一时间点和第二时间点进行记录。

步骤S260:根据第一时间点和第二时间点,计算所述界面的加载时间。

根据记录的第二时间点减去第一时间点,以计算出首屏界面的加载时间。

当然,在本发明实施例中,对于实施例一中的sikuli图像识别程序和Python性能监测程序,在步骤S220时可以开始调用相应接口,在步骤S260执行完毕后则停止调用相应接口。避免系统资源的浪费。

步骤S270:判断是否对所述应用的界面的测试完成;如果测试完成,则执行步骤S280。

对于某测试安装包中特定的用于测试的界面,是一个个依次进行加载的,在当前待测试界面加载完成之后,可以对该测试安装包中所有添加标志点应用的界面是否全部加载并测试完成进行判断,如果安装测试包选择 的应用的界面中还有未测试的应用的界面,则对未进行测试的应用的界面进行加载测试;如果对安装测试包中选择的应用的界面已经全部加载测试完毕,则执行步骤S280。

步骤S280:判断是否还存在未测试的测试安装包;如果存在,则执行步骤S290。

本发明实施例中,在对一个测试安装包中选择的应用的界面加载测试完成之后,则可以对待测试终端中是否存在未测试的测试安装包进行判断,如过待测试终端的所有测试安装包测试完成,则针对该待测试终端的首屏加载时间的测试完成。如果,待测试终端中还有未测试的测试安装包,则执行步骤S290。

步骤S290:继续安装一未测试的测试安装包,进入步骤220。

在待测试终端还有未测试的测试安装包时,则在待测试终端中安装该未测试的测试安装包,并进入步骤S220以继续对待测试终端的首屏加载时间进行测试。

本发明实施例中通过与待测试终端建立同步连接,以同步待测试终端的屏幕图像,在屏幕图像中触发针对一界面的加载操作时,记录触发该加载操作的第一时间点,并计算同步的屏幕图像与预置的第一图像是否匹配,该第一图像为界面加载完毕时的屏幕图像,在匹配时,则记录同步的第二时间点,然后根据第一时间点和第二时间点,计算该界面的加载时间。获取准确的测试结果,减少了测试使用时间,避免了用户的繁琐操作的有益效果。

并且,本发明实施例中在对待测试终端的首屏加载时间的测试过程中,还对待测试终端的各性能指标进行了测试,以确保待测试终端的运行环境不影响到测试结果。并通过对多次的界面加载测试,可以使得获得的首屏加载时间比较准确。

同时,可以自动对多个测试安装包的界面的加载时间进行测试,减少用户的操作过程。

对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

实施例三

参照图3,示出了根据本发明一个实施例的一种界面加载时间计算装置实施例的结构框图,具体可以包括如下模块:

同步连接建立模块300,适于与待测试终端建立同步连接;

屏幕图像同步模块310,适于通过所述同步连接,同步待测试终端的屏幕图像;

第一时间点记录模块320,适于在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

优选的,所述针对一界面的加载操作可以包括:针对一网页的加载操作;

进一步的,所述待测试终端同步处理所述加载操作包括:

所述待测试终端同步发送所述针对网页的加载操作。

图像匹配计算模块330,适于在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

优选地,在所述图像匹配计算模块330之前,还可以包括:

子图像获取模块328,适于获取待测试的界面的所述第一图像中的至少一个位置的子图像。

优选地,所述图像匹配计算模块330可以包括:

预定位置的子图像获取子模块3302,适于从所述同步的屏幕图像中获取与各预定位置的子图像;所述预定位置与所述界面的加载完毕之后的屏 幕图像中的至少一个位置相同;

相同位置子图像匹配判断模块3304,适于判断各预定位置的子图像与第一图像的相同位置子图像是否完全匹配。

第二时间点记录模块340,适于在同步的屏幕图像与预置的第一图像匹配时,记录同步的第二时间点;

加载时间计算模块350,适于根据第一时间点和第二时间点,计算所述界面的加载时间。

优选地,在所述加载时间计算模块350之后,还可以包括:

界面标识记录模块360,适于将所述加载时间以对应所述界面的界面标识进行记录。

优选地,所述界面的界面标识可以包括:网页的网址信息。

优选地,在所述界面标识记录模块360之后,还可以包括:

比较模块370,适于将所述界面标识的加载时间与预定的时间阈值进行比较;

加载时间符合要求确定模块380,适于当所述加载时间小于等于预定的时间阈值时,确定所述界面标识的加载时间符合要求;

报警信息生成模块390,适于当所述加载时间大于预定的时间阈值时,确定所述界面标识的加载时间不符合要求,并生成报警信息。

实施例四

参照图4,示出了根据本发明一个实施例的一种界面加载时间计算装置实施例的结构框图,具体可以包括如下模块:

同步连接建立模块400,适于与待测试终端建立同步连接;

优选地,所述同步连接建立模块400可以包括:

同步连接建立子模块4002,适于通过本地安装的STF远程控制平台,与所述待测试终端建立同步连接。

测试安装包安装模块410,适于通过STF远程控制平台,向待测试终端安装测试安装包;所述界面属于所述测试安装包安装后的应用的界面;

屏幕图像同步模块420,适于通过所述同步连接,同步待测试终端的屏幕图像;

第一时间点记录模块430,适于在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

图像匹配计算模块440,适于在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

优选地,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

性能指标获取子模块4402,适于获取所述界面加载过程中的待测试终端的至少一项性能指标。

优选地,所述性能指标包括:CPU占有率、内存占有率、待测试终端流量、待测试终端的电量其中至少一项。

第二时间点记录模块450,适于在同步的屏幕图像与预置的第一图像匹配时,记录同步的第二时间点;

加载时间计算模块460,适于根据第一时间点和第二时间点,计算所述界面的加载时间;

测试完成判断模块470,适于判断是否对所述测试安装包的应用的界面测试完成;

测试安装包判断模块480,适于判断是否还存在未测试的测试安装包;

未测试安装包安装模块490,适于在存在未测试的测试安装包时,则继续安装一未测试的测试安装包,进入屏幕图像同步模块。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

实施例五

参照图5,示出了根据本发明一个实施例的一种界面加载时间计算设备500实施例的结构框图,具体可以包括:

存储器510,加载有多条可执行指令;

处理器520,执行所述多条可执行指令;所述多条指令包括执行以下步骤的方法:

与待测试终端建立同步连接;

通过所述同步连接,同步待测试终端的屏幕图像;

在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

如果匹配,则记录同步的第二时间点;

根据第一时间点和第二时间点,计算所述界面的加载时间。

优选地,本发明实施例的多条可执行指令还可包括前述各个步骤的方法,本发明实施例不对其加以限定。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征 有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的界面加载时间计算设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在 载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明公开了A1、一种界面加载时间计算方法,包括:

与待测试终端建立同步连接;

通过所述同步连接,同步待测试终端的屏幕图像;

在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

如果匹配,则记录同步的第二时间点;

根据第一时间点和第二时间点,计算所述界面的加载时间。

A2、如A1所述的方法,在所述计算同步的屏幕图像与预置的第一图像是否匹配的步骤之前,还包括:

获取待测试的界面的所述第一图像中的至少一个位置的子图像。

A3、如A2所述的方法,所述计算同步的屏幕图像与预置的第一图像是否匹配的步骤,包括:

从所述同步的屏幕图像中获取与各预定位置的子图像;所述预定位置与所述界面的加载完毕之后的屏幕图像中的至少一个位置相同;

判断各预定位置的子图像与第一图像的相同位置子图像是否完全匹 配。

A4、如A1所述的方法,所述与待测试终端建立同步连接的步骤,包括:

通过本地安装的STF远程控制平台,与所述待测试终端建立同步连接。

A5、如A1所述的方法,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

获取所述界面加载过程中的待测试终端的至少一项性能指标。

A6、如A5所述的方法,所述性能指标包括:CPU占有率、内存占有率、待测试终端流量、待测试终端的电量其中至少一项。

A7、如A5所述的方法,在所述通过所述同步连接,同步待测试终端的屏幕图像的步骤之前,还包括:

通过STF远程控制平台,向待测试终端安装测试安装包;所述界面属于所述测试安装包安装后的应用的界面。

A8、如A7所述的方法,在所述根据第一时间点和第二时间点,计算所述界面的加载时间的步骤之后,还包括:

判断是否对所述安装测试包的应用的界面测试完成;

如果测试完成,则判断是否还存在未测试的测试安装包;

如果存在,则继续安装一未测试的测试安装包,进入通过所述同步连接,同步待测试终端的屏幕图像的步骤。

A9、如A1-A8其中之一所述的方法,在所述根据第一时间点和第二时间点,计算所述界面的加载时间的步骤之后,还包括:

将所述加载时间以对应所述界面的界面标识进行记录。

A10、如A9所述的方法,所述针对一界面的加载操作包括:针对一网页的加载操作;

进一步的,所述待测试终端同步处理所述加载操作包括:

所述待测试终端同步发送所述针对网页的加载操作。

A11、如A9所述的方法,所述界面的界面标识包括:网页的网址信 息。

A12、如A9所述的方法,在所述将所述加载时间以对应所述界面的界面标识进行记录的步骤之后,还包括:

将所述界面标识的加载时间与预定的时间阈值进行比较;

当所述加载时间小于等于预定的时间阈值,则确定所述界面标识的加载时间符合要求;

当所述加载时间大于预定的时间阈值,则确定所述界面标识的加载时间不符合要求,并生成报警信息。

本发明还公开了B13、一种界面加载时间计算装置,包括:

同步连接建立模块,适于与待测试终端建立同步连接;

屏幕图像同步模块,适于通过所述同步连接,同步待测试终端的屏幕图像;

第一时间点记录模块,适于在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

图像匹配计算模块,适于在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

第二时间点记录模块,适于在同步的屏幕图像与预置的第一图像匹配时,记录同步的第二时间点;

加载时间计算模块,适于根据第一时间点和第二时间点,计算所述界面的加载时间。

B14、如B13所述的装置,在所述图像匹配计算模块之前,还包括:

子图像获取模块,适于获取待测试的界面的所述第一图像中的至少一个位置的子图像。

B15、如B14所述的装置,所述图像匹配计算模块的步骤,包括:

预定位置的子图像获取子模块,适于从所述同步的屏幕图像中获取与各预定位置的子图像;所述预定位置与所述界面的加载完毕之后的屏幕图 像中的至少一个位置相同;

相同位置子图像匹配判断模块,适于判断各预定位置的子图像与第一图像的相同位置子图像是否完全匹配。

B16、如B13所述的装置,所述同步连接建立模块包括:

同步连接建立子模块,适于通过本地安装的STF远程控制平台,与所述待测试终端建立同步连接。

B17、如B13所述的装置,在所述在待测试终端根据所述加载操作进行处理的过程中,还包括:

性能指标获取子模块,适于获取所述界面加载过程中的待测试终端的至少一项性能指标。

B18、如B17所述的装置,所述性能指标包括:CPU占有率、内存占有率、待测试终端流量、待测试终端的电量其中至少一项。

B19、如B17所述的装置,在所述屏幕图像同步模块之前,还包括:

测试安装包安装模块,适于通过STF远程控制平台,向待测试终端安装测试安装包;所述界面属于所述测试安装包安装后的应用的界面。

B20、如B19所述的方法,在所述加载时间计算模块之后,还包括:

测试完成判断模块,适于判断是否对所述测试安装包的应用的界面测试完成;

测试安装包判断模块,适于判断是否还存在未测试的测试安装包;

未测试安装包安装模块,适于在存在未测试的测试安装包时,继续安装一未测试的测试安装包,进入屏幕图像同步模块。

B21、如B13-B20其中之一所述的装置,在所述加载时间计算模块之后,还包括:

界面标识记录模块,适于将所述加载时间以对应所述界面的界面标识进行记录。

B22、如B21所述的装置,所述针对一界面的加载操作包括:针对一网页的加载操作;

进一步的,所述待测试终端同步处理所述加载操作包括:

所述待测试终端同步发送所述针对网页的加载操作。

B23、如B21所述的装置,所述界面的界面标识包括:网页的网址信息。

B24、如B21所述的装置,在所述界面标识记录模块之后,还包括:

比较模块,适于将所述界面标识的加载时间与预定的时间阈值进行比较;

加载时间符合要求确定模块,适于当所述加载时间小于等于预定的时间阈值时,确定所述界面标识的加载时间符合要求;

报警信息生成模块,适于当所述加载时间大于预定的时间阈值时,确定所述界面标识的加载时间不符合要求,并生成报警信息。

本发明还供了C25、一种界面加载时间计算设备,包括:

存储器,加载有多条可执行指令;

处理器,执行所述多条可执行指令;所述多条指令包括执行以下步骤的方法:

与待测试终端建立同步连接;

通过所述同步连接,同步待测试终端的屏幕图像;

在所述屏幕图像中触发针对一界面的加载操作,并记录触发所述加载操作的第一时间点;所述待测试终端同步处理所述加载操作;

在待测试终端根据所述加载操作进行处理的过程中,计算同步的屏幕图像与预置的第一图像是否匹配;所述第一图像为界面加载完毕时的屏幕图像;

如果匹配,则记录同步的第二时间点;

根据第一时间点和第二时间点,计算所述界面的加载时间。

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