CN108874673B - 应用程序的测试方法及装置 - Google Patents

应用程序的测试方法及装置 Download PDF

Info

Publication number
CN108874673B
CN108874673B CN201810643286.3A CN201810643286A CN108874673B CN 108874673 B CN108874673 B CN 108874673B CN 201810643286 A CN201810643286 A CN 201810643286A CN 108874673 B CN108874673 B CN 108874673B
Authority
CN
China
Prior art keywords
frame
application program
target
frames
similarity
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
Application number
CN201810643286.3A
Other languages
English (en)
Other versions
CN108874673A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810643286.3A priority Critical patent/CN108874673B/zh
Publication of CN108874673A publication Critical patent/CN108874673A/zh
Application granted granted Critical
Publication of CN108874673B publication Critical patent/CN108874673B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

Abstract

本发明实施例公开了应用程序的测试方法及装置,所述方法包括:获取应用程序执行目标操作的操作视频;对操作视频进行解析,提取多个关键帧,关键帧与关键帧的相邻帧的相似度满足预设条件;从多个关键帧中选取两个目标关键帧;根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标。采用本发明实施例,可有效测试应用程序的性能指标。

Description

应用程序的测试方法及装置
技术领域
本发明涉及互联网技术领域,尤其涉及应用程序的测试方法及装置。
背景技术
随着计算机技术的发展和智能终端的普及,应用的类型越来越丰富,用户对应用的需求也越来越高,只有性能好的应用才能吸引用户,而性能差的应用很容易导致用户的流失。那么,对于应用开发者来说,只有了解应用的性能,才能提升应用性能,进而提高用户量,增强用户粘度。
为了了解应用的性能,可以根据应用程序开始执行某个操作的时间和该操作执行完成的时间,计算耗费的时长,得到应用程序执行该操作的处理耗时,该处理耗时可以反映应用程序的处理能力,对应用的性能好坏有着重要的影响。如何有效进行性能指标测试是当前亟需解决的技术问题。
发明内容
本发明实施例所要解决的技术问题在于,提供应用程序的测试方法及装置,可有效测试应用程序的性能指标。
为了解决上述技术问题,第一方面,本发明实施例提供了一种应用程序的测试方法,所述方法包括:
获取应用程序执行目标操作的操作视频;
对所述操作视频进行解析,提取多个关键帧,所述关键帧与所述关键帧的相邻帧的相似度满足预设条件;
从所述多个关键帧中选取两个目标关键帧;
根据所选取的目标关键帧的时差关系测试得到所述应用程序执行所述目标操作的性能指标。
第二方面,本发明实施例提供了一种应用程序的测试装置,所述装置包括用于执行第一方面所述的方法的单元。
第三方面,本发明实施例提供了一种通信设备,所述通信设备包括处理器和存储器,所述处理器与所述存储器建立通信,所述处理器用于执行第一方面所述的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被通信设备执行时使所述通信设备执行如第一方面所述的方法。
实施本发明实施例,通过获取应用程序执行目标操作的操作视频,对操作视频进行解析,提取多个关键帧,从多个关键帧中选取两个目标关键帧,根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标,可有效测试应用程序的性能指标。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图;
图1是本发明实施例中提供的一种应用程序的测试方法的流程示意图;
图2是本发明实施例中提供的一种关键帧的示意图;
图3是本发明实施例中提供的一种各帧与前后帧的相似度的示意图;
图4是本发明实施例中提供的另一种应用程序的测试方法的流程示意图;
图5是本发明实施例中提供的一种应用程序的测试装置的结构示意图;
图6是本发明实施例中提供的一种通信设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的应用程序的测试方法可以运行在通信设备中,通信设备可以为终端设备或者服务器等。终端设备包括但不限于移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备或者个人用户数字助理等。终端设备运行有客户端,例如腾讯管家客户端或者腾讯手游助手等,上述应用程序的测试方法可以运行在终端设备的客户端中。服务器包括但不限于腾讯管家服务器或者腾讯手游服务器等。
请参见图1,图1是本发明实施例公开的一种应用程序的测试方法的流程示意图,该应用程序的测试方法运行在通信设备中。如图1所示,该应用程序的测试方法至少可以包括以下步骤:
S101,通信设备获取应用程序执行目标操作的操作视频。
通信设备可以获取应用程序执行目标操作的操作视频。其中,应用程序可以为各种应用的应用程序,应用例如通讯社交应用、影音图像应用或者阅读学习应用等。目标操作可以为应用实现某项功能时该应用的应用程序所需要执行的操作,例如微信应用实现朋友圈显示这一功能时微信应用的应用程序需要执行的操作,又如腾讯管家应用实现电脑体检这一功能时电脑管家应用的应用程序需要执行的操作。需要说明的是,目标操作包含但不限定于上述操作,例如应用启动或者页面加载等,具体不受本发明实施例的限定。
可选的,当通信设备为终端设备时,终端设备可以调用预设视频录制接口,对应用程序执行目标操作的执行过程进行视频录制,得到操作视频。例如,用户点击终端设备中应用程序的应用图标,终端设备启动该应用程序,终端设备检测到用户的触控操作,通过应用程序执行目标操作的执行过程中,终端设备的显示屏幕在不同时间会显示不同用户界面,终端设备可以通过ios自带录屏工具,对应用程序执行目标操作的执行过程中终端设备的显示屏幕进行视频录制,得到操作视频。又如,终端设备可以使用自动化工具,启动应用程序,并自动控制应用程序执行目标操作,终端设备可以通过ios自带录屏工具,对应用程序执行目标操作的执行过程中终端设备的显示屏幕进行视频录制,得到操作视频。示例性的,操作视频的格式可以为video.mp4。
可选的,当通信设备为服务器时,服务器可以接收终端设备发送的操作视频,操作视频是终端设备调用预设视频录制接口,对应用程序执行目标操作的执行过程进行视频录制得到的。例如,服务器向终端设备发送操作视频获取请求时,终端设备可以调用预设视频录制接口,对应用程序执行目标操作的执行过程进行视频录制,得到操作视频,终端设备将操作视频发送给服务器。又如,终端设备调用预设视频录制接口,对应用程序执行目标操作的执行过程进行视频录制,得到操作视频,周期性地将视频录制得到的一个或者多个操作视频发送给服务器。
S102,通信设备对操作视频进行解析,提取多个关键帧。
通信设备获取到操作视频之后,可以对操作视频进行解析,提取多个关键帧。其中,关键帧与关键帧的相邻帧的相似度满足预设条件。例如,通信设备可以使用ffmpeg组件将操作视频拆解为多帧图像,再使用图像识别的方法,在相似度骤降的点识别出关键帧,以实现自动选取关键帧。示例性的,通信设备可以ffmpeg组件进行拆帧,比如1s的视频文件拆出10张图像,那每两张图像之间的时间差为1000毫秒(ms)/10=100ms,即各帧的采样时长为100ms。
可选的,通信设备可以将操作视频进行拆分,得到多帧,计算各帧与该帧的相邻帧的相似度,当相似度满足预设条件时,将该帧识别为关键帧。
可选的,通信设备可以计算各帧与该帧之前的第一帧的第一相似度,以及该帧之前的第一帧与该帧之前的第二帧之间的第二相似度,当第一相似度和第二相似度之间的差值大于第一预设阈值时,将该帧识别为关键帧。其中,该帧之前的第一帧可以为与该帧相邻且位于该帧之前的第一个帧,例如该帧为第十帧,则该帧之前的第一帧为第九帧。该帧之前的第二帧可以为与该帧之前的第一帧相邻且位于该帧之前的第二个帧,例如该帧为第十帧,则该帧之前的第二帧为第八帧。以图2所示的关键帧的示意图为例,通信设备将操作视频进行拆分,得到56帧,并计算每相邻两帧的相似度。每相邻两帧的相似度的示意图可以如图3所示,第一帧和第二帧的相似度为0.1,第二帧和第三帧的相似度为0.2,第三帧和第四帧的相似度为0.4,第四帧和第五帧的相似度为0.6,第五帧和第六帧的相似度为0.75,第六帧和第七帧的相似度为0.3。第一帧和第二帧的相似度,与第二帧和第三帧的相似度之间的差值为0.1;第二帧和第三帧的相似度,与第三帧和第四帧的相似度之间的差值为0.2;第三帧和第四帧的相似度,与第四帧和第五帧的相似度之间的差值为0.2;第四帧和第五帧的相似度,与第五帧和第六帧的相似度之间的差值为0.15;第五帧和第六帧的相似度,与第六帧和第七帧的相似度之间的差值为0.45。如果第一预设阈值为0.3,则通信设备可以确定第七帧为关键帧。示例性的,因为操作视频是连贯的,拆分得到的多帧图像中相邻的两张图像相似度是比较高的,直到关键帧出现,相似度骤降。如图2中的1、2、3、4这四个关键帧,比如关键帧2前面一张图片与再前面的图片相似度非常高,是启动logo的画面,关键帧2出现一个新特性,就是启动完成后出现应用程序(Application,APP)的首页。这里,相似度会有骤降,通过图像对比,选出相似度骤降的点,即为我们要找的关键帧。
可选的,通信设备可以计算各帧与该帧之前的第一帧的第一相似度,或者该帧与该帧之后的第一帧的第三相似度,当第一相似度或者第三相似度小于第二预设阈值时,将该帧识别为关键帧。其中,该帧之前的第一帧可以为与该帧相邻且位于该帧之前的第一个帧,该帧之后的第一帧可以为与该帧相邻且位于该帧之后的第一个帧。以图2所示的关键帧的示意图为例,通信设备将操作视频进行拆分,得到56帧,并计算每相邻两帧的相似度,将与该帧之前的第一帧的相似度小于第二预设阈值,或者与该帧之后的第一帧的相似度小于第二预设阈值的帧作为关键帧,例如,通信设备可以将图像1、2、3、4识别为关键帧。
S103,通信设备从多个关键帧中选取两个目标关键帧。
通信设备提取多个关键帧之后,可以从多个关键帧中选取两个目标关键帧。
可选的,通信设备可以将多个关键帧中的任意两个帧作为目标关键帧。以图2为例,通信设备可以将关键帧2和关键帧4作为目标关键帧,或者通信设备可以将关键帧1和关键帧4作为目标关键帧。
可选的,通信设备可以将多个关键帧中所间隔帧的数量最小的两个帧作为目标关键帧。以图2为例,关键帧1和关键帧2所间隔帧的数量为17,关键帧2和关键帧3所间隔帧的数量为7,关键帧3和关键帧4所间隔帧的数量为9,关键帧2和关键帧3所间隔帧的数量最小,则通信设备可以将关键帧2和关键帧3作为目标关键帧。
S104,通信设备根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标。
通信设备可以根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标。例如,所选取的目标关键帧的时差越小,通信设备可以确定应用程序执行目标操作的性能越高。又如,所选取的目标关键帧的时差与应用程序执行目标操作的预设时长之间的差值越小,通信设备可以确定应用程序执行目标操作的性能越高。
可选的,通信设备可以根据所选取的目标关键帧的时差关系,得到所述应用程序执行目标操作的处理耗时,根据处理耗时,得到应用程序执行目标操作的性能指标。处理耗时可以为应用程序从开始执行目标操作至目标操作执行完毕所经历的时长。
可选的,通信设备可以获取两个目标关键帧的帧标识之间的差值,将差值与目标关键帧的采样时长相乘,得到应用程序执行目标操作的处理耗时。采样时长可以为每相邻两帧之间的时间差,例如操作视频的时长为1分钟(min),对该操作视频进行拆分得到的100帧,则各帧的采样时长为60*1000/100=600ms。目标关键帧的帧标识可以为目标关键帧的帧号。例如,两个目标关键帧的帧号分别为30以及38,则两个目标关键帧的帧标识之间的差值为8,应用程序执行目标操作的处理耗时可以为:8*600ms=4800ms。
可选的,通信设备可以获取各个目标关键帧的采集时间,将两个目标关键帧的采集时间之间的差值,作为应用程序执行所述目标操作的处理耗时。例如,操作视频的时长为1min,第一目标关键帧的采集时间为30.2秒(s),第二目标关键帧的采集时间为35s,则应用程序执行目标操作的处理耗时可以为:35-30.2=4.8s。
本发明实施例中,通信设备获取应用程序执行目标操作的操作视频,对操作视频进行解析,提取多个关键帧,从多个关键帧中选取两个目标关键帧,根据所选取的目标关键帧的时差关系测试得到应用程序执行所述目标操作的性能指标,可有效测试应用程序的性能指标。
请参见图4,图4是本发明实施例公开的另一种应用程序的测试方法的流程示意图,该应用程序的测试方法可以通过终端设备与服务器的交互实现。如图4所示,该应用程序的测试方法至少可以包括以下步骤:
S401,终端设备获取应用程序执行目标操作的操作视频。
终端设备可以调用预设视频录制接口,对应用程序执行目标操作的执行过程进行视频录制,得到操作视频。例如,用户点击终端设备中应用程序的应用图标,终端设备启动该应用程序,终端设备检测到用户的触控操作,通过应用程序执行目标操作的执行过程中,终端设备的显示屏幕在不同时间会显示不同用户界面,终端设备可以通过ios自带录屏工具,对应用程序执行目标操作的执行过程中终端设备的显示屏幕进行视频录制,得到操作视频。又如,终端设备可以使用自动化工具,启动应用程序,并自动控制应用程序执行目标操作,终端设备可以通过ios自带录屏工具,对应用程序执行目标操作的执行过程中终端设备的显示屏幕进行视频录制,得到操作视频。示例性的,操作视频的格式可以为video.mp4。
S402,终端设备将操作视频发送给服务器。
例如,服务器向终端设备发送操作视频获取请求之后,终端设备可以响应该操作视频获取请求,将操作视频发送给服务器。
又如,终端设备获取应用程序执行目标操作的操作视频之后,实时将操作视频发送给服务器,或者周期性地将视频录制得到的一个或者多个操作视频发送给服务器。
S403,服务器对操作视频进行解析,提取多个关键帧。
服务器获取到操作视频之后,可以对操作视频进行解析,提取多个关键帧。其中,关键帧与关键帧的相邻帧的相似度满足预设条件。
可选的,通信设备可以将操作视频进行拆分,得到多帧,计算各帧与该帧的相邻帧的相似度,当相似度满足预设条件时,将该帧识别为关键帧。
可选的,通信设备可以计算各帧与该帧之前的第一帧的第一相似度,以及该帧之前的第一帧与该帧之前的第二帧之间的第二相似度,当第一相似度和第二相似度之间的差值大于第一预设阈值时,将该帧识别为关键帧。其中,该帧之前的第一帧可以为与该帧相邻且位于该帧之前的第一个帧,例如该帧为第十帧,则该帧之前的第一帧为第九帧。该帧之前的第二帧可以为与该帧之前的第一帧相邻且位于该帧之前的第二个帧,例如该帧为第十帧,则该帧之前的第二帧为第八帧。
可选的,通信设备可以计算各帧与该帧之前的第一帧的第一相似度,或者该帧与该帧之后的第一帧的第三相似度,当第一相似度或者第三相似度小于第二预设阈值时,将该帧识别为关键帧。其中,该帧之前的第一帧可以为与该帧相邻且位于该帧之前的第一个帧,该帧之后的第一帧可以为与该帧相邻且位于该帧之后的第一个帧。
S404,服务器从多个关键帧中选取两个目标关键帧。
服务器提取多个关键帧之后,可以从多个关键帧中选取两个目标关键帧。
可选的,服务器可以将多个关键帧中的任意两个帧作为目标关键帧,或者将多个关键帧中所间隔帧的数量最小的两个帧作为目标关键帧。
S405,服务器根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标。
服务器可以根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标。
可选的,服务器可以根据所选取的目标关键帧的时差关系,得到应用程序执行目标操作的处理耗时,根据处理耗时,得到应用程序执行目标操作的性能指标。处理耗时可以为应用程序从开始执行目标操作至目标操作执行完毕所经历的时长。
可选的,服务器可以获取两个目标关键帧的帧标识之间的差值,将差值与目标关键帧的采样时长相乘,得到应用程序执行目标操作的处理耗时。采样时长可以为每相邻两帧之间的时间差。目标关键帧的帧标识可以为目标关键帧的帧号。
可选的,服务器可以获取各个目标关键帧的采集时间,将两个目标关键帧的采集时间之间的差值,作为应用程序执行所述目标操作的处理耗时。
本发明实施例中,终端设备获取应用程序执行目标操作的操作视频,终端设备将操作视频发送给服务器,服务器对操作视频进行解析,提取多个关键帧,服务器从多个关键帧中选取两个目标关键帧,服务器根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标,可有效测试应用程序的性能指标。
在本发明实施例提供的另一种应用程序的测试方法中,终端设备获取应用程序执行目标操作的操作视频之后,终端设备可以对操作视频进行解析,提取多个关键帧,终端设备从多个关键帧中选取两个目标关键帧,终端设备将目标关键帧发送给服务器,服务器根据终端设备所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标,可有效测试应用程序的性能指标。
在本发明实施例提供的另一种应用程序的测试方法中,终端设备获取应用程序执行目标操作的操作视频之后,终端设备可以对操作视频进行解析,提取多个关键帧,终端设备从多个关键帧中选取两个目标关键帧,终端设备根据所选取的目标关键帧的时差关系测试得到应用程序执行目标操作的性能指标,终端设备将应用程序执行目标操作的性能指标发送给服务器,可有效测试应用程序的性能指标。
请参见图5,图5是本发明实施例中提供的一种应用程序的测试装置的结构示意图,如图所示本发明实施例中的应用程序的测试装置至少可以包括获取单元501、提取单元502和测试单元503,其中:
获取单元501,用于获取应用程序执行目标操作的操作视频;
提取单元502,用于对所述操作视频进行解析,提取多个关键帧,所述关键帧与所述关键帧的相邻帧的相似度满足预设条件;
提取单元502,还用于从所述多个关键帧中选取两个目标关键帧;
测试单元503,用于根据所选取的目标关键帧的时差关系测试得到所述应用程序执行所述目标操作的性能指标。
可选的,提取单元502对所述操作视频进行解析,提取多个关键帧,具体可以为:
将所述操作视频进行拆分,得到多帧;
计算各帧与所述帧的相邻帧的相似度;
当所述相似度满足预设条件时,将所述帧识别为关键帧。
可选的,提取单元502计算各帧与所述帧的相邻帧的相似度,具体可以为:
计算所述帧与所述帧之前的第一帧的第一相似度,以及所述帧之前的第一帧与所述帧之前的第二帧之间的第二相似度;
所述当所述相似度满足预设条件时,提取单元502将所述帧识别为关键帧,具体可以为:
当所述第一相似度和所述第二相似度之间的差值大于第一预设阈值时,将所述帧识别为所述关键帧。
可选的,所述提取单元502计算各帧与所述帧的相邻帧的相似度,具体可以为:
计算所述帧与所述帧之前的第一帧的第一相似度,或者所述帧与所述帧之后的第一帧的第三相似度;
所述当所述相似度满足预设条件时,提取单元502将所述帧识别为关键帧,具体可以为:
当所述第一相似度或者所述第三相似度小于第二预设阈值时,将所述帧识别为所述关键帧。
可选的,所述提取单元502从所述多个关键帧中选取两个目标关键帧,具体可以为:
将所述多个关键帧中的任意两个帧作为所述目标关键帧;或者
将所述多个关键帧中所间隔帧的数量最小的两个帧作为所述目标关键帧。
可选的,所述获取单元501获取应用程序执行目标操作的操作视频,包括:
调用预设视频录制接口,对所述应用程序执行所述目标操作的执行过程进行视频录制,得到所述操作视频。
可选的,所述测试单元503根据所选取的目标关键帧的时差关系测试得到所述应用程序执行所述目标操作的性能指标,具体可以为:
根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时;
根据所述处理耗时,得到所述应用程序执行所述目标操作的性能指标。
可选的,所述测试单元503根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时,具体可以为:
获取所述两个目标关键帧的帧标识之间的差值;
将所述差值与所述目标关键帧的采样时长相乘,得到所述应用程序执行所述目标操作的处理耗时。
可选的,所述测试单元503根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时,具体可以为:
获取各个所述目标关键帧的采集时间;
将所述两个目标关键帧的采集时间之间的差值,作为所述应用程序执行所述目标操作的处理耗时。
本发明实施例中,获取单元501获取应用程序执行目标操作的操作视频,提取单元502对所述操作视频进行解析,提取多个关键帧,提取单元502从所述多个关键帧中选取两个目标关键帧,测试单元503根据所选取的目标关键帧的时差关系测试得到所述应用程序执行所述目标操作的性能指标,可有效测试应用程序的性能指标。
请参见图6,图6为本发明实施例提供的一种通信设备的结构示意图,本发明实施例提供的通信设备可以用于实施上述图1、4所示的本发明实施例实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照图1、4所示的本发明实施例。
如图6所示,该通信设备包括:至少一个处理器601,例如CPU,至少一个输入装置603,至少一个输出装置604,存储器605,至少一个通信总线602。其中,通信总线602用于实现这些组件之间的连接通信。其中,输入装置603具体可以为预设视频录制接口,用于获取操作视频。其中,输出装置604具体可以为网络接口或者显示屏幕,用于传输应用程序执行目标操作的性能指标。其中,存储器605可能包含高速RAM存储器,也可能还包括非不稳定的存储器。存储器605可选的可以包含至少一个位于远离前述处理器601的存储装置。处理器601可以结合图5所示的应用程序的测试装置。存储器605中存储一组程序代码,且处理器601、输入装置603以及输出装置604调用存储器605中存储的程序代码,用于执行以下操作:
处理器601获取应用程序执行目标操作的操作视频;
处理器601对所述操作视频进行解析,提取多个关键帧,所述关键帧与所述关键帧的相邻帧的相似度满足预设条件;
处理器601从所述多个关键帧中选取两个目标关键帧;
处理器601根据所选取的目标关键帧的时差关系测试得到所述应用程序执行所述目标操作的性能指标。
可选的,所述处理器601对所述操作视频进行解析,提取多个关键帧,包括:
将所述操作视频进行拆分,得到多帧;
计算各帧与所述帧的相邻帧的相似度;
当所述相似度满足预设条件时,将所述帧识别为关键帧。
可选的,所述处理器601计算各帧与所述帧的相邻帧的相似度,包括:
计算所述帧与所述帧之前的第一帧的第一相似度,以及所述帧之前的第一帧与所述帧之前的第二帧之间的第二相似度;
所述当所述相似度满足预设条件时,处理器601将所述帧识别为关键帧,包括:
当所述第一相似度和所述第二相似度之间的差值大于第一预设阈值时,将所述帧识别为所述关键帧。
可选的,所述处理器601计算各帧与所述帧的相邻帧的相似度,包括:
计算所述帧与所述帧之前的第一帧的第一相似度,或者所述帧与所述帧之后的第一帧的第三相似度;
所述当所述相似度满足预设条件时,处理器601将所述帧识别为关键帧,包括:
当所述第一相似度或者所述第三相似度小于第二预设阈值时,将所述帧识别为所述关键帧。
可选的,所述处理器601从所述多个关键帧中选取两个目标关键帧,包括:
将所述多个关键帧中的任意两个帧作为所述目标关键帧;或者
将所述多个关键帧中所间隔帧的数量最小的两个帧作为所述目标关键帧。
可选的,所述处理器601获取应用程序执行目标操作的操作视频,包括:
调用预设视频录制接口,对所述应用程序执行所述目标操作的执行过程进行视频录制,得到所述操作视频。
可选的,所述处理器601根据所选取的目标关键帧的时差关系测试得到所述应用程序执行所述目标操作的性能指标,包括:
根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时;
根据所述处理耗时,得到所述应用程序执行所述目标操作的性能指标。
可选的,所述处理器601根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时,包括:
获取所述两个目标关键帧的帧标识之间的差值;
将所述差值与所述目标关键帧的采样时长相乘,得到所述应用程序执行所述目标操作的处理耗时。
可选的,所述处理器601根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时,包括:
获取各个所述目标关键帧的采集时间;
将所述两个目标关键帧的采集时间之间的差值,作为所述应用程序执行所述目标操作的处理耗时。
具体的,本发明实施例中介绍的通信设备可以用以实施本发明结合图1、4介绍的方法实施例中的部分或全部流程。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (7)

1.一种应用程序的测试方法,其特征在于,包括:
获取应用程序执行目标操作的操作视频,所述操作视频是终端设备调用预设视频录制接口,对所述应用程序执行目标操作的执行过程进行视频录制得到的;
使用ffmpeg组件将所述操作视频进行拆分,得到多帧;
遍历所述多帧,计算各帧与所述帧之前的第一帧的第一相似度,以及所述帧之前的第一帧与所述帧之前的第二帧之间的第二相似度;
当所述第一相似度和所述第二相似度之间的差值大于第一预设阈值时,将所述帧识别为关键帧;
将识别到的多个关键帧中所间隔帧的数量最小的两个帧作为目标关键帧;
根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时;
根据所述处理耗时,得到所述应用程序执行所述目标操作的性能指标。
2.如权利要求1所述的方法,其特征在于,所述获取应用程序执行目标操作的操作视频,包括:
调用预设视频录制接口,对所述应用程序执行所述目标操作的执行过程进行视频录制,得到所述操作视频。
3.如权利要求1所述的方法,其特征在于,所述根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时,包括:
获取所述两个目标关键帧的帧标识之间的差值;
将所述差值与所述目标关键帧的采样时长相乘,得到所述应用程序执行所述目标操作的处理耗时。
4.如权利要求1所述的方法,其特征在于,所述根据所选取的目标关键帧的时差关系,得到所述应用程序执行所述目标操作的处理耗时,包括:
获取各个所述目标关键帧的采集时间;
将所述两个目标关键帧的采集时间之间的差值,作为所述应用程序执行所述目标操作的处理耗时。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被通信设备执行时使所述通信设备执行如权利要求1-4 任一项所述的方法。
6.一种应用程序的测试装置,其特征在于,所述装置包括用于执行如权利要求1-4任一项所述的应用程序的测试方法的单元。
7.一种通信设备,其特征在于,所述通信设备包括:
存储器,用于存储程序代码;
处理器,用于调用所述存储器中存储的所述程序代码,执行如权利要求1-4任一项所述的应用程序的测试方法。
CN201810643286.3A 2018-06-21 2018-06-21 应用程序的测试方法及装置 Active CN108874673B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810643286.3A CN108874673B (zh) 2018-06-21 2018-06-21 应用程序的测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810643286.3A CN108874673B (zh) 2018-06-21 2018-06-21 应用程序的测试方法及装置

Publications (2)

Publication Number Publication Date
CN108874673A CN108874673A (zh) 2018-11-23
CN108874673B true CN108874673B (zh) 2022-03-04

Family

ID=64339982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810643286.3A Active CN108874673B (zh) 2018-06-21 2018-06-21 应用程序的测试方法及装置

Country Status (1)

Country Link
CN (1) CN108874673B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800146B (zh) * 2018-12-13 2023-06-20 平安科技(深圳)有限公司 应用程序启动时间测试方法、装置、计算机设备及存储介质
CN110209581A (zh) * 2019-05-31 2019-09-06 北京字节跳动网络技术有限公司 基于应用程序的触发操作分析方法及装置
CN110221979A (zh) * 2019-06-04 2019-09-10 广州虎牙信息科技有限公司 应用程序的性能测试方法、装置、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105761255B (zh) * 2016-02-04 2019-01-25 网易(杭州)网络有限公司 游戏画面卡顿测试方法及装置
CN107515825B (zh) * 2017-08-22 2021-05-25 网易(杭州)网络有限公司 流畅度测试方法和装置、存储介质、终端
CN107509107B (zh) * 2017-09-20 2020-04-24 广州视源电子科技股份有限公司 视频播放故障的检测方法、装置及设备、可读介质

Also Published As

Publication number Publication date
CN108874673A (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
CN107045508B (zh) 应用程序的处理方法和装置
CN108874673B (zh) 应用程序的测试方法及装置
CN108447509B (zh) 一种生成多媒体文件的方法和装置
CN115202599A (zh) 一种投屏显示方法和相关装置
CN112131466A (zh) 群组展示方法、装置、系统和存储介质
CN114449327B (zh) 视频片段的分享方法、装置、电子设备及可读存储介质
CN110688569B (zh) 一种信息搜索方法、装置、介质及设备
CN111614990A (zh) 加载时长的获取方法、装置及电子设备
CN110688319B (zh) 应用保活能力测试方法及相关装置
CN111400539A (zh) 语音问卷的处理方法、装置和系统
CN113312237A (zh) 信息反馈方法、装置、电子设备及存储介质
CN111581518A (zh) 信息推送方法和装置
CN112423024A (zh) 一种视频转码方法、装置、计算机设备和存储介质
CN110515834B (zh) 接口测试方法、装置、移动终端及存储介质
CN109529321B (zh) 一种信息处理方法、装置和存储介质
CN106500685B (zh) 多终端协助导航方法、装置及系统
CN110765326A (zh) 推荐方法、装置、设备及计算机可读存储介质
CN111611470A (zh) 一种数据处理方法、装置和电子设备
CN112612690B (zh) 一种用户界面信息处理方法、装置、电子设备及存储介质
CN112596822B (zh) 应用程序窗口展示控制方法、系统和可读存储介质
CN112118410B (zh) 业务处理方法、装置、终端及存储介质
CN113742553B (zh) 数据处理方法及装置
CN112988475B (zh) 容灾测试方法、装置、测试服务器及介质
CN113190695B (zh) 多媒体数据搜索方法及装置、计算机设备和介质
CN110659214B (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