CN110781067A - 一种启动耗时的计算方法、装置、设备和存储介质 - Google Patents

一种启动耗时的计算方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN110781067A
CN110781067A CN201911047896.8A CN201911047896A CN110781067A CN 110781067 A CN110781067 A CN 110781067A CN 201911047896 A CN201911047896 A CN 201911047896A CN 110781067 A CN110781067 A CN 110781067A
Authority
CN
China
Prior art keywords
application program
time
starting
target application
verification
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.)
Pending
Application number
CN201911047896.8A
Other languages
English (en)
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 Bo Hongyuan Data Polytron Technologies Inc
Original Assignee
Beijing Bo Hongyuan Data Polytron Technologies Inc
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 Beijing Bo Hongyuan Data Polytron Technologies Inc filed Critical Beijing Bo Hongyuan Data Polytron Technologies Inc
Priority to CN201911047896.8A priority Critical patent/CN110781067A/zh
Publication of CN110781067A publication Critical patent/CN110781067A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种启动耗时的计算方法、装置、设备及存储介质;该方法包括:获取目标应用程序的启动开始时间;通过自定义校验方式获取所述目标应用程序的启动结束时间;其中,所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。本发明实施例提供的技术方案,通过多种获取方式获取目标应用程序的启动结束时间,进而计算出目标应用程序的启动耗时,其计算过程不受闪屏页和广告页的影响,实现了根据应用程序启动后展示首页的相关信息,确定应用程序的启动耗时,提高了启动耗时计算的准确性和可靠性。

Description

一种启动耗时的计算方法、装置、设备和存储介质
技术领域
本发明实施例涉及计算机技术,尤其涉及一种启动耗时的计算方法、装置、设备和存储介质。
背景技术
随着软件技术的不断发展,各种各样的应用程序(Application,简称APP)出现在移动终端中,为用户提供多样性功能服务的同时,也对APP的性能提出来了更高要求。
作为评价APP性能好坏的一个重要标准,对于启动耗时的计算也成为性能测试中的一项重要指标;现有技术中,对于安卓系统的APP通常是通过adb命令(即“adb shell amstart-W”)的方式来获取目标页面的启动耗时。
发明人在实现本发明的过程中发现,使用adb命令来获取APP启动耗时只适用于获取单个目标页面的启动耗时,如果存在过渡页面(例如,闪屏页和广告页),则无法实现启动耗时的计算,该获取方式存在较大的局限性。
发明内容
本发明实施例提供了一种启动耗时的计算方法、装置、设备和存储介质,以提高计算应用程序启动耗时的准确性和可靠性。
第一方面,本发明实施例提供了一种启动耗时的计算方法,包括:
获取目标应用程序的启动开始时间;
通过自定义校验方式获取所述目标应用程序的启动结束时间;其中,所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;
根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
第二方面,本发明实施例提供了一种启动耗时的计算装置,包括:
启动开始时间获取模块,用于获取目标应用程序的启动开始时间;
启动结束时间获取模块,用于通过自定义校验方式获取所述目标应用程序的启动结束时间;所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;
启动耗时计算模块,用于根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
第三方面,本发明实施例还提供了一种设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所述的启动耗时的计算方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时实现本发明任意实施例所述的启动耗时的计算方法。
本发明实施例提供的技术方案,通过多种获取方式获取目标应用程序的启动结束时间,并结合目标应用程序的启动开始时间,进而计算出目标应用程序的启动耗时,其计算过程不受应用程序启动过程中闪屏页和广告页的影响,实现了根据应用程序启动后展示首页的相关信息,确定应用程序的启动耗时,提高了启动耗时计算的准确性和可靠性,同时,还可以根据不同的测试条件,选择适合的获取方式确定目标应用程序的启动结束时间,极大地扩展了应用范围。
附图说明
图1是本发明实施例一提供的一种启动耗时的计算方法的流程图;
图2是本发明实施例二提供的一种启动耗时的计算装置的结构框图;
图3是本发明实施例三提供的一种设备的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种启动耗时的计算方法的流程图,本实施例可适用于计算应用程序的启动耗时,该方法可以由本发明实施例中的启动耗时的计算装置来执行,该装置可以通过软件和/或硬件实现,并一般可以集成在用于计算应用程序启动耗时的终端设备或服务器中,该方法具体包括如下步骤:
S110、获取目标应用程序的启动开始时间。
应用程序的启动方式分为冷启动和热启动;冷启动,是当启动应用程序时,后台没有该应用程序的进程,系统创建一个新的进程分配给该应用程序;热启动,是当启动应用程序时,后台已有该应用程序的进程,因此在已有进程的情况下,会从已有的进程中启动该应用程序;在本发明实施例中,目标应用程序的启动方式包括冷启动;可选的,在计算应用程序启动耗时的终端设备或服务器中集成有安卓系统环境,以使目标应用程序可以应用于该服务器中。
具体的,获取AMS组件中startActivity方法启动目标应用程序启动页的启动时间,并作为目标应用程序的启动开始时间;其中,AMS(ActivityManagerService)组件是安卓系统中管理Activity运行状态的系统进程,用于管理系统中所有应用进程;而获取startActivity方法启动一个新的Activity的启动时间,则是模拟了用户点击目标应用程序的应用图标的时间,也即获取该启动时间实质上等于获取目标应用程序的应用图标的点击时间。
S120、通过自定义校验方式获取所述目标应用程序的启动结束时间;其中,所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个。
可选的,在本发明实施例中,若所述自定义校验方式包括图像对比校验;则所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:实时获取所述目标应用程序中当前显示页面的图像信息,并将所述图像信息与预先存储的样本图像进行匹配;当匹配成功时,将匹配成功时间作为所述目标应用程序的启动结束时间;或者实时获取所述目标应用程序中当前显示页面的图像信息,若所述图像信息在预设时间内未发生变化,则将所述图像信息的出现时间,作为所述目标应用程序的启动结束时间。具体的,样本图像是预先存储的目标页面(例如,应用程序启动后的展示首页)的整体或部分图像,可以通过OpenCV(Open Source Computer Vision Librar,开源计算机视觉库)框架将实时获取的目标应用程序的当前显示图像与该样本图像进行匹配,当匹配度超过预设匹配阈值(例如,95%)时,认为二者匹配成功,并将匹配成功时的时间作为目标应用程序的启动结束时间。特别的,样本图像可以是应用程序启动后展示首页中底端的目标图像,以保证匹配成功时,该应用程序启动后的展示首页已全部加载完成,即启动后的展示首页已完全展示了该页面包含的信息;样本图像也可以是应用程序启动后展示首页中顶端的目标图像,使得匹配成功时,表示已获取到启动后展示首页的相关信息。还可以通过OpenCV框架将实时获取的目标应用程序的图像信息与下一帧图像进行匹配,如果在预设时间内该图像信息均未发生变化,则认为目标页面已加载完成,并将该图像信息出现的时间作为目标应用程序的启动结束时间;例如,在某一特定时刻获取的图像信息与之后预设时间(例如,3秒)内获取到的图像信息均匹配,则认为目标应用程序在该特定时刻已经加载完成,将该特定时刻作为目标应用程序的启动结束时间。
可选的,在本发明实施例中,若所述自定义校验方式包括控件信息校验;则所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:实时获取所述目标应用程序中当前显示页面的控件信息,并将所述控件信息与预先存储的样本控件信息进行匹配;所述控件信息包括控件显示文本和/或控件资源ID;当匹配成功时,将匹配成功时间作为所述目标应用程序的启动结束时间。控件,也即界面控件,是页面中可视化的图像元件,例如,按钮和文件编辑框等,可以具备执行功能,通过事件(例如,点击事件)引发代码运行并完成响应;控件显示文本,是显示到界面的文本信息,包括名称、形状、显示风格和字体颜色等;控件资源ID,是应用程序运行时给各控件分配的编号,用于标识各控件;控件显示文本可以直观的显示在页面中,控件资源ID不显示在页面中。具体的,以应用程序启动后展示首页的目标控件信息作为查询条件,在启动过程中通过视图树遍历已显示的控件信息,当查询到与目标控件信息匹配的控件信息时,则认为已获取到应用程序启动后的展示首页,应用程序启动完成。特别的,目标控件信息可以是应用程序启动后展示首页的全部控件信息,也可以是特定位置的一个或多个控件信息。
可选的,在本发明实施例中,若所述自定义校验方式包括控件绘制校验;则所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:当获取到与所述目标应用程序匹配的目标控件绘制结束时,将结束时间作为所述目标应用程序的启动结束时间。具体的,通过支持安卓系统ART模式(Android Runtime)的Hook框架,监测应用程序启动过程中各视图(View)的OnDraw(绘制函数)方法执行结束的时间,当获取到应用程序启动后展示首页中的目标控件的OnDraw方法被执行后,则认为应用程序启动后展示首页已绘制完成,应用程序完成启动。特别的,目标控件可以是应用程序启动后展示首页的全部控件,也可以是特定位置的一个或多个控件。
可选的,在本发明实施例中,若所述自定义校验方式包括网络接口校验;则所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:当获取到所述目标应用程序的目标网络请求时,将所述目标网络请求的响应时间作为所述目标应用程序的启动结束时间。例如,以应用程序启动后展示首页的标题展示请求为例,响应该请求后,认为应用程序已展示了首页内容,启动已经完成;还可以在响应展示首页中所有展示信息的请求后,认为应用程序已完全展示了首页内容,启动已经完成。具体的,可以通过Hook Native层的Socket(套接字)相关方法监测网络请求的数据传输,还可以通过Java网络代理的方式来监测目标应用程序的网络请求。
S130、根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
启动结束时间与启动开始时间的差值即为目标应用程序的启动耗时。可选的,在本发明实施例中,若所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的多个;所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:根据自定义校验方式包括的各校验方式分别获取所述目标应用程序的启动结束时间;相应的,所述根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时,包括:根据所述启动开始时间以及各所述启动结束时间分别计算参考启动耗时;对各所述参考启动耗时进行加权求和处理,并将处理结果作为所述目标应用程序的启动耗时。例如,自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验和网络接口校验,根据各校验方式分别获取所述目标应用程序的启动结束时间,并结合启动开始时间分别计算出参考启动耗时为3秒、3.2秒、3.5秒和2.8秒,再根据预设的权重系数(例如,图像对比校验、控件信息校验、控件绘制校验和网络接口校验分别对应权重0.3、0.3、0.2和0.2)进行求和,计算目标应用程序的启动耗时为3×0.3+3.2×0.3+3.5×0.2+2.8×0.2=3.12秒。
本发明实施例提供的技术方案,通过多种获取方式获取目标应用程序的启动结束时间,并结合目标应用程序的启动开始时间,进而计算出目标应用程序的启动耗时,其计算过程不受应用程序启动过程中闪屏页和广告页的影响,实现了根据应用程序启动后展示首页的相关信息,确定应用程序的启动耗时,提高了启动耗时计算的准确性和可靠性,同时,还可以根据不同的测试条件,选择适合的获取方式确定目标应用程序的启动结束时间,极大地扩展了应用范围。
实施例二
图2是本发明实施例二所提供的一种启动耗时的计算装置的结构框图,该装置具体包括:启动开始时间获取模块210、启动结束时间获取模块220和启动耗时计算模块230。
启动开始时间获取模块210,用于获取目标应用程序的启动开始时间;
启动结束时间获取模块220,用于通过自定义校验方式获取所述目标应用程序的启动结束时间;所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;
启动耗时计算模块230,用于根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
本发明实施例提供的技术方案,通过多种获取方式获取目标应用程序的启动结束时间,并结合目标应用程序的启动开始时间,进而计算出目标应用程序的启动耗时,其计算过程不受应用程序启动过程中闪屏页和广告页的影响,实现了根据应用程序启动后展示首页的相关信息,确定应用程序的启动耗时,提高了启动耗时计算的准确性和可靠性,同时,还可以根据不同的测试条件,选择适合的获取方式确定目标应用程序的启动结束时间,极大地扩展了应用范围。
可选的,在上述技术方案的基础上,启动开始时间获取模块210,具体用于:
获取AMS组件中startActivity方法启动目标应用程序启动页的启动时间,并将所述启动时间作为目标应用程序的启动开始时间。
可选的,在上述技术方案的基础上,若所述自定义校验方式包括图像对比校验;启动结束时间获取模块220,具体包括:
第一启动结束时间确定单元,用于实时获取所述目标应用程序中当前显示页面的图像信息,并将所述图像信息与预先存储的样本图像进行匹配;当所述图像信息与预先存储的样本图像匹配成功时,将匹配成功时间作为所述目标应用程序的启动结束时间
或者第二启动结束时间确定单元,用于实时获取所述目标应用程序中当前显示页面的图像信息,若所述图像信息在预设时间内未发生变化,则将所述图像信息的出现时间,作为所述目标应用程序的启动结束时间。
可选的,在上述技术方案的基础上,若所述自定义校验方式包括控件信息校验;启动结束时间获取模块220,具体包括:
控件信息获取单元,用于实时获取所述目标应用程序中当前显示页面的控件信息,并将所述控件信息与预先存储的样本控件信息进行匹配;所述控件信息包括控件显示文本和/或控件资源ID;
第三启动结束时间确定单元,用于当所述控件信息与预先存储的样本控件信息匹配成功时,将匹配成功时间作为所述目标应用程序的启动结束时间。
可选的,在上述技术方案的基础上,若所述自定义校验方式包括控件绘制校验;启动结束时间获取模块220,具体包括:
控件绘制获取单元,用于当获取到与所述目标应用程序匹配的目标控件绘制结束时,将结束时间作为所述目标应用程序的启动结束时间。
可选的,在上述技术方案的基础上,若所述自定义校验方式包括网络接口校验;启动结束时间获取模块220,具体包括:
目标网络请求获取单元,用于当获取到所述目标应用程序的目标网络请求时,将所述目标网络请求的响应时间作为所述目标应用程序的启动结束时间。
可选的,在上述技术方案的基础上,若所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的多个;启动结束时间获取模块220,具体用于:
根据自定义校验方式包括的各校验方式分别获取所述目标应用程序的启动结束时间;
可选的,在上述技术方案的基础上,启动耗时计算模块230,具体包括:
参考启动耗时获取单元,用于根据所述启动开始时间以及各所述启动结束时间分别计算参考启动耗时;
启动耗时计算单元,用于对各所述参考启动耗时进行加权求和处理,并将处理结果作为所述目标应用程序的启动耗时。
上述装置可执行本发明任意实施例所提供的启动耗时的计算方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的方法。
实施例三
图3为本发明实施例三提供的一种设备的结构示意图。图3示出了适于用来实现本发明实施方式的示例性设备12的框图。图3显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的启动耗时的计算方法。也即:获取目标应用程序的启动开始时间;通过自定义校验方式获取所述目标应用程序的启动结束时间;其中,所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
实施例四
本发明实施例四还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所述的启动耗时的计算方法;该方法包括:
获取目标应用程序的启动开始时间;
通过自定义校验方式获取所述目标应用程序的启动结束时间;其中,所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;
根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种启动耗时的计算方法,其特征在于,包括:
获取目标应用程序的启动开始时间;
通过自定义校验方式获取所述目标应用程序的启动结束时间;其中,所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;
根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
2.根据权利要求1所述的方法,其特征在于,所述获取目标应用程序的启动开始时间,包括:
获取AMS组件中startActivity方法启动目标应用程序启动页的启动时间,并将所述启动时间作为目标应用程序的启动开始时间。
3.根据权利要求1所述的方法,其特征在于,若所述自定义校验方式包括图像对比校验;
所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:
实时获取所述目标应用程序中当前显示页面的图像信息,并将所述图像信息与预先存储的样本图像进行匹配;当匹配成功时,将匹配成功时间作为所述目标应用程序的启动结束时间;
或者实时获取所述目标应用程序中当前显示页面的图像信息,若所述图像信息在预设时间内未发生变化,则将所述图像信息的出现时间,作为所述目标应用程序的启动结束时间。
4.根据权利要求1所述的方法,其特征在于,若所述自定义校验方式包括控件信息校验;
所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:
实时获取所述目标应用程序中当前显示页面的控件信息,并将所述控件信息与预先存储的样本控件信息进行匹配;所述控件信息包括控件显示文本和/或控件资源ID;
当匹配成功时,将匹配成功时间作为所述目标应用程序的启动结束时间。
5.根据权利要求1所述的方法,其特征在于,若所述自定义校验方式包括控件绘制校验;
所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:
当获取到与所述目标应用程序匹配的目标控件绘制结束时,将结束时间作为所述目标应用程序的启动结束时间。
6.根据权利要求1所述的方法,其特征在于,若所述自定义校验方式包括网络接口校验;
所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:
当获取到所述目标应用程序的目标网络请求时,将所述目标网络请求的响应时间作为所述目标应用程序的启动结束时间。
7.根据权利要求1-6任一所述的方法,其特征在于,若所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的多个;
所述通过自定义校验方式获取所述目标应用程序的启动结束时间,包括:
根据自定义校验方式包括的各校验方式分别获取所述目标应用程序的启动结束时间;
所述根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时,包括:
根据所述启动开始时间以及各所述启动结束时间分别计算参考启动耗时;
对各所述参考启动耗时进行加权求和处理,并将处理结果作为所述目标应用程序的启动耗时。
8.一种启动耗时的计算装置,其特征在于,包括:
启动开始时间获取模块,用于获取目标应用程序的启动开始时间;
启动结束时间获取模块,用于通过自定义校验方式获取所述目标应用程序的启动结束时间;所述自定义校验方式包括图像对比校验、控件信息校验、控件绘制校验以及网络接口校验中的至少一个;
启动耗时计算模块,用于根据所述启动开始时间以及所述启动结束时间,计算所述目标应用程序的启动耗时。
9.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的启动耗时的计算方法。
10.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的启动耗时的计算方法。
CN201911047896.8A 2019-10-30 2019-10-30 一种启动耗时的计算方法、装置、设备和存储介质 Pending CN110781067A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911047896.8A CN110781067A (zh) 2019-10-30 2019-10-30 一种启动耗时的计算方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911047896.8A CN110781067A (zh) 2019-10-30 2019-10-30 一种启动耗时的计算方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN110781067A true CN110781067A (zh) 2020-02-11

Family

ID=69387926

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911047896.8A Pending CN110781067A (zh) 2019-10-30 2019-10-30 一种启动耗时的计算方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN110781067A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112380092A (zh) * 2020-11-16 2021-02-19 统信软件技术有限公司 一种应用程序启动时间测试方法
CN113852519A (zh) * 2021-11-26 2021-12-28 北京国电通网络技术有限公司 服务器工作状态监控设备、方法、装置和计算机可读介质
CN114168222A (zh) * 2021-11-29 2022-03-11 北京博睿宏远数据科技股份有限公司 一种启动耗时的获取方法、装置、终端设备和存储介质
CN114690988A (zh) * 2022-03-08 2022-07-01 北京字跳网络技术有限公司 测试方法、装置和电子设备
CN115562742A (zh) * 2022-01-10 2023-01-03 荣耀终端有限公司 应用启动方法、电子设备及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320602A (zh) * 2015-12-04 2016-02-10 广东欧珀移动通信有限公司 一种应用启动速度的测试方法及装置
CN106951302A (zh) * 2017-04-28 2017-07-14 努比亚技术有限公司 应用启动时间的测试方法与终端及计算机可读存储介质
CN107797904A (zh) * 2017-09-12 2018-03-13 福建天晴数码有限公司 一种测量响应时间的方法及终端
CN108197301A (zh) * 2018-01-26 2018-06-22 北京博睿宏远数据科技股份有限公司 一种用于量化不同券商app行情刷新速度的方法
CN109656645A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 展现时间确定方法和页面渲染完成时间的确定方法及装置
CN110058997A (zh) * 2019-03-12 2019-07-26 平安普惠企业管理有限公司 应用响应时间测试方法、装置、计算机设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320602A (zh) * 2015-12-04 2016-02-10 广东欧珀移动通信有限公司 一种应用启动速度的测试方法及装置
CN106951302A (zh) * 2017-04-28 2017-07-14 努比亚技术有限公司 应用启动时间的测试方法与终端及计算机可读存储介质
CN107797904A (zh) * 2017-09-12 2018-03-13 福建天晴数码有限公司 一种测量响应时间的方法及终端
CN109656645A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 展现时间确定方法和页面渲染完成时间的确定方法及装置
CN108197301A (zh) * 2018-01-26 2018-06-22 北京博睿宏远数据科技股份有限公司 一种用于量化不同券商app行情刷新速度的方法
CN110058997A (zh) * 2019-03-12 2019-07-26 平安普惠企业管理有限公司 应用响应时间测试方法、装置、计算机设备及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112380092A (zh) * 2020-11-16 2021-02-19 统信软件技术有限公司 一种应用程序启动时间测试方法
CN112380092B (zh) * 2020-11-16 2024-05-31 统信软件技术有限公司 一种应用程序启动时间测试方法
CN113852519A (zh) * 2021-11-26 2021-12-28 北京国电通网络技术有限公司 服务器工作状态监控设备、方法、装置和计算机可读介质
CN114168222A (zh) * 2021-11-29 2022-03-11 北京博睿宏远数据科技股份有限公司 一种启动耗时的获取方法、装置、终端设备和存储介质
CN114168222B (zh) * 2021-11-29 2023-10-17 北京博睿宏远数据科技股份有限公司 一种启动耗时的获取方法、装置、终端设备和存储介质
CN115562742A (zh) * 2022-01-10 2023-01-03 荣耀终端有限公司 应用启动方法、电子设备及可读存储介质
CN115562742B (zh) * 2022-01-10 2023-10-20 荣耀终端有限公司 应用启动方法、电子设备及可读存储介质
CN114690988A (zh) * 2022-03-08 2022-07-01 北京字跳网络技术有限公司 测试方法、装置和电子设备
CN114690988B (zh) * 2022-03-08 2024-01-23 北京字跳网络技术有限公司 测试方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN110781067A (zh) 一种启动耗时的计算方法、装置、设备和存储介质
CN109960541B (zh) 启动小程序的方法、设备和计算机存储介质
KR101790190B1 (ko) 애플리케이션 시나리오 식별 방법, 전력 소비 관리 방법, 장치 및 단말기 장치
CN110309475B (zh) 一种页面展现方法、装置、终端设备及存储介质
US9772861B2 (en) Accessing operating system elements via a tag cloud
CN110825456A (zh) 加载时间计算方法、装置、计算机设备及存储介质
CN109582317B (zh) 用于调试寄宿应用的方法和装置
CN111625312A (zh) 一种app换肤方法、装置、电子设备及存储介质
CN107193747B (zh) 代码测试方法、装置和计算机设备
CN111008106B (zh) 一种服务器监控管理方法、装置及电子设备和存储介质
CN109558118B (zh) 创建智能小程序的原生组件的方法、装置、设备和存储介质
CN111054070A (zh) 基于游戏的商品展示方法、装置、终端及存储介质
CN108268298B (zh) 桌面图标的生成方法、装置、存储介质及电子设备
CN115860877A (zh) 一种产品营销方法、装置、设备及介质
CN112988192A (zh) 版本更新方法、装置、电子设备及存储介质
CN114138367A (zh) 一种自助设备上的业务实现方法、装置、设备及存储介质
CN110968519A (zh) 一种游戏测试方法、装置、服务器及存储介质
CN108958929B (zh) 应用算法库的方法、装置、存储介质及电子设备
CN112367295A (zh) 插件展示方法及装置、存储介质及电子设备
CN113760631A (zh) 页面加载时长确定方法、装置、设备和存储介质
CN111414211A (zh) 在系统启动阶段显示图像的方法、装置、设备和存储介质
CN111124862A (zh) 智能设备性能测试方法、装置及智能设备
KR102488645B1 (ko) 가상 운영체제 서비스 제공을 위한 전자 장치 및 방법
CN109976741B (zh) 计算机资源管理方法、装置、智能终端及存储介质
CN111176648B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200211

RJ01 Rejection of invention patent application after publication