CN113821438A - 一种应用响应性能测试方法、***及计算设备 - Google Patents

一种应用响应性能测试方法、***及计算设备 Download PDF

Info

Publication number
CN113821438A
CN113821438A CN202111116473.4A CN202111116473A CN113821438A CN 113821438 A CN113821438 A CN 113821438A CN 202111116473 A CN202111116473 A CN 202111116473A CN 113821438 A CN113821438 A CN 113821438A
Authority
CN
China
Prior art keywords
instruction
instructions
picture
frame picture
tester
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.)
Granted
Application number
CN202111116473.4A
Other languages
English (en)
Other versions
CN113821438B (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.)
Uniontech Software Technology Co Ltd
Original Assignee
Uniontech Software Technology 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 Uniontech Software Technology Co Ltd filed Critical Uniontech Software Technology Co Ltd
Priority to CN202111116473.4A priority Critical patent/CN113821438B/zh
Publication of CN113821438A publication Critical patent/CN113821438A/zh
Application granted granted Critical
Publication of CN113821438B publication Critical patent/CN113821438B/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/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • 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/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种应用响应性能测试方法、***及计算设备,其中方法包括步骤:执行响应性能测试脚本,生成指令集,所述指令集中包括与应用响应相关的一个或多个指令;将所述指令集发送至测试机,以便测试机执行所述指令集中的一个或多个指令;获取所述测试机在执行指令过程中的视频数据;以及基于所述视频数据确定执行每个指令的响应时间,以生成应用响应性能测试结果。根据本发明的技术方案,采用计算设备与测试机分离的结构,排除了脚本本身对测试机性能的干扰,确保对应用响应性能的测试结果更加准确可靠。

Description

一种应用响应性能测试方法、***及计算设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用响应性能测试方法、应用响应性能测试***及计算设备。
背景技术
目前,响应性能是衡量应用综合性能的重要指标之一。在每个应用发布之前,需要对应用的启动速度、页面响应速度进行全方位的测试。
在实际测试环境中,为了获得更加准确的数据,常使用外部设备来录制对应用的操作过程,然后将录制的视频进行分帧处理,然后手动寻找首帧和尾帧,再计算整个操作过程的耗时时长。这种方案,因外部设备拍摄的视频不稳定,并且,拍摄人员、拍摄角度、拍摄手法、视频清晰度都有所不同,同时会受到外界光线等因素的干扰,会对视频质量产生严重影响,最终影响测试结果的准确性。而且,视频录制、视频分帧、首尾帧查找等需要大量的人力成本,整个过程费时费力。
还有一种方案,通过在应用程序中增加埋点,基于埋点触发的时间差来计算时长。该方法也即是在应用的代码上增加一个埋点,代码运行到埋点处打一个时间戳,再运行到下一个埋点处又打一个时间戳,这两个时间戳的差值即是时间差值。该方案需要在代码中提前做好埋点,然后才能进行测试,然而在代码中增加多个埋点,会影响应用性能,另外,由于应用上线后不能保留埋点代码,从而导致测试版本与用户使用版本不一致,影响测试结果的可靠性。
为此,需要一种应用响应性能测试方法,以解决现有技术中存在的问题。
发明内容
为此,本发明提供一种应用响应性能测试方法、应用响应性能测试***及计算设备,以解决或至少缓解上面存在的问题。
根据本发明的一个方面,提供一种应用响应性能测试方法,在计算设备中执行,所述方法包括步骤:执行响应性能测试脚本,生成指令集,所述指令集中包括与应用响应相关的一个或多个指令;将所述指令集发送至测试机,以便测试机执行所述指令集中的一个或多个指令;获取所述测试机在执行指令过程中的视频数据;以及基于所述视频数据确定执行每个指令的响应时间,以生成应用响应性能测试结果。
可选地,在根据本发明的应用响应性能测试方法中,基于所述视频数据确定执行每个指令的响应时间的步骤包括:基于预定帧率对所述视频数据进行分帧处理生成连续的多帧图片;从所述多帧图片中获取执行每个指令对应的首帧图片、尾帧图片;基于所述执行每个指令对应的首帧图片、尾帧图片来确定执行每个指令的响应时间。
可选地,在根据本发明的应用响应性能测试方法中,从所述多帧图片中获取执行每个指令对应的首帧图片、尾帧图片的步骤包括:将所述多帧图片划分为一个或多个静止阶段图片集以及一个或多个变化阶段图片集;确定执行每个指令对应的两个变化阶段图片集,并从两个变化阶段图片集中分别获取执行指令对应的首帧图片、尾帧图片。
可选地,在根据本发明的应用响应性能测试方法中,基于所述执行每个指令对应的首帧图片、尾帧图片来确定执行每个指令的响应时间的步骤包括:根据执行指令对应的首帧图片与尾帧图片之间的图片帧数以及所述预定帧率,来确定所述首帧图片与尾帧图片之间的时长,并将该时长确定为执行指令的响应时间。
可选地,在根据本发明的应用响应性能测试方法中,将所述多帧图片划分为一个或多个静止阶段图片集以及一个或多个变化阶段图片集的步骤包括:计算相邻图片的相似度,根据所述相邻图片的相似度将所述多帧图片划分为一个或多个静止阶段图片集、一个或多个变化阶段图片集。
可选地,在根据本发明的应用响应性能测试方法中,所述计算设备通过串口设备与所述测试机相连,将所述指令集发送至测试机包括:将所述指令集通过串口设备发送至测试机。
可选地,在根据本发明的应用响应性能测试方法中,所述计算设备通过视频采集设备与所述测试机相连,获取所述测试机在执行指令过程中的视频数据包括:通过视频采集设备获取所述测试机在执行指令过程中的桌面视频信号;将所述桌面视频信号转换为所述计算设备可识别的视频数据,并存储所述视频数据,以生成可编辑的视频数据文件。
可选地,在根据本发明的应用响应性能测试方法中,所述指令包括应用启动指令、界面切换指令、文件拷贝指令、文件保存指令中的一种或多种。
可选地,在根据本发明的应用响应性能测试方法中,所述指令集包括鼠标移动指令集、键盘输入指令集。
根据本发明的一个方面,提供一种应用响应性能测试***,包括:服务器,适于执行如上所述的方法;以及测试机,与所述服务器相连,适于从所述服务器获取指令集,并执行所述指令集中的一个或多个指令。
可选地,在根据本发明的应用响应性能测试***中,还包括:串口设备,分别与所述服务器、测试机连接,所述服务器适于通过串口设备将指令集发送至测试机。
可选地,在根据本发明的应用响应性能测试***中,还包括:视频采集设备,分别与所述服务器、测试机连接,所述视频采集设备适于获取所述测试机在执行指令过程中的桌面视频信号,并将桌面视频信号发送至所述服务器。
根据本发明的一个方面,提供一种计算设备,包括:至少一个处理器;存储器,存储有程序指令,其中,程序指令被配置为适于由上述至少一个处理器执行,所述程序指令包括用于执行如上所述的应用响应性能测试方法的指令。
根据本发明的一个方面,提供一种存储有程序指令的可读存储介质,当该程序指令被计算设备读取并执行时,使得该计算设备执行如上所述的应用响应性能测试方法。
根据本发明的技术方案,提供了一种应用响应性能测试方法和***,采用计算设备与测试机分离的结构,在计算设备中执行响应性能测试脚本,将执行脚本后生成的指令集发送至测试机,在测试机纯粹地执行指令,能够避免在测试机中执行响应性能测试脚本而占用***资源、对测试机执行指令的过程造成的影响,排除了脚本本身对测试机性能的干扰。这样,确保对应用响应性能的测试结果更加准确可靠。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的应用响应性能测试***100的示意图;
图2示出了根据本发明一个实施例的计算设备200的示意图;
图3示出了根据本发明一个实施例的应用响应性能测试方法300的流程图;以及
图4示出了根据本发明一个实施例的对视频数据进行分帧处理并进行阶段划分的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的应用响应性能测试***100的示意图。
如图1所示,应用响应性能测试***100包括服务器120、与服务器120相连的测试机150。
服务器120用于对应用响应性能进行测试,可以实现为现有技术中的任何一种能够实现对应用响应性能进行测试的设备,本发明对服务器的具体实现不作限制。例如,服务器120可以实现为桌面电脑、笔记本电脑、处理器芯片、手机、平板电脑等计算设备,但不限于此,也可以是驻留在计算设备上的应用程序。
根据本发明的实施例,服务器120通过执行响应性能测试脚本,可以生成指令集。并且,服务器120可以将指令集发送至测试机150,通过测试机150来执行指令集中的一个或多个指令。
需要说明的是,指令集中包括与应用响应相关的一个或多个指令。例如,指令可以包括应用启动指令、界面切换指令、文件拷贝指令、文件保存指令中的一种或多种。通过在测试机执行这些指令,服务器120通过获取测试机在执行指令过程中的响应性能数据(例如响应时间),能实现对应用的响应性能进行测试。
在一个实施例中,如图1所示,应用响应性能测试***100还包括串口设备130。串口设备130分别与服务器120、测试机150连接,使得服务器120可以通过串口设备130与测试机150通信。这样,服务器120可以通过串口设备130将指令集发送至测试机150。这里,串口设备130可以将串口数据基于HID协议规范进行打包,并通过USB接口发送至与其相连的设备。
在一种实现方式中,串口设备130的主控端与服务器120的USB接口相连,串口设备130的被控端与测试机150的USB接口相连,这样,服务器120便可以通过串口设备130、USB接口将指令集发送至测试机150。
应当指出,通过上述服务器与测试机的分离式结构,通过在服务器执行响应性能测试脚本,取代在测试机中执行响应性能测试脚本,服务器将执行脚本后生成的指令集发送至测试机,在测试机纯粹地执行指令,从而能避免因脚本本身需要占用***资源而影响测试机执行指令和响应性能测试,使得对应用响应性能的测试结果更加准确可靠。
在一个实施例中,如图1所示,应用响应性能测试***100还包括视频采集设备140,视频采集设备140分别与服务器120、测试机150连接,使得服务器120通过视频采集设备140与测试机150相连。具体地,测试机150的显卡接口或主板接口可以连接视频线,通过将视频线连接到视频采集设备140上,使得测试机150与视频采集设备140相连。进而,将视频采集设备140连接于服务器120,便实现视频采集设备140分别与测试机150、服务器120相连。
在一个实施例中,视频采集设备140可以获取测试机130在执行指令过程中的桌面视频信号,并将桌面视频信号发送至服务器120。这样,服务器120便通过视频采集设备140获取到测试机150的桌面视频信号。
并且,服务器120可以将桌面视频信号转换为可以在服务器120(计算设备)中识别的视频数据。通过将桌面视频信号转换为可识别的视频数据,并存储视频数据,从而生成可编辑的视频数据文件。该视频数据文件中记录了测试机执行指令的整个过程。
在一个实施例中,服务器120适于执行根据本发明的应用响应性能测试方法300。本发明的应用响应性能测试方法300将在下文中详述。
在一个实施例中,服务器120可以实现为一种计算设备200,使得本发明的应用响应性能测试方法300可以在计算设备200中执行。
图2示出了根据本发明一个实施例的计算设备200的示意图。
如图2所示,在基本的配置202中,计算设备200典型地包括***存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和***存储器206之间的通信。
取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(UP)、微控制器(UC)、数字信息处理器(DSP)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
取决于期望的配置,***存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。***存储器206可以包括操作***220、一个或者多个应用222以及程序数据224。应用222实际上是多条程序指令,其用于指示处理器204执行相应的操作。在一些实施方式中,应用222可以布置为在操作***上使得处理器204利用程序数据224进行操作。
计算设备200还包括储存设备232,储存设备232包括可移除储存器236和不可移除储存器238。
计算设备200还可以包括储存接口总线234。储存接口总线234实现了从储存设备232(例如,可移除储存器236和不可移除储存器238)经由总线/接口控制器230到基本配置202的通信。操作***220、应用222以及数据224的至少一部分可以存储在可移除储存器236和/或不可移除储存器238上,并且在计算设备200上电或者要执行应用222时,经由储存接口总线234而加载到***存储器206中,并由一个或者多个处理器204来执行。
计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个A/V端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个I/O端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中以编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的实施例中,计算设备200被配置为执行根据本发明的应用响应性能测试方法300。计算设备200的应用中包含用于执行本发明的应用响应性能测试方法300的多条程序指令,这些程序指令可以指示处理器204执行本发明的应用响应性能测试方法300,使得本发明的应用响应性能测试方法300可以在计算设备200中执行,以便对应用的响应性能进行测试。
图3示出了根据本发明一个实施例的应用响应性能测试方法300的流程图。方法300适于在计算设备(例如前述计算设备200)中执行。
如图3所示,方法300始于步骤S310。
在步骤S310中,计算设备200执行响应性能测试脚本,生成指令集。
随后,在步骤S320中,将指令集发送至测试机150,以便测试机执行指令集中的多个指令。
这里,指令集中包括与应用响应相关的一个或多个指令。例如,在一种实现方式中,指令可以包括应用启动指令、界面切换指令、文件拷贝指令、文件保存指令中的一种或多种。通过在测试机执行这些指令,获取测试机在执行指令过程中的响应性能数据,能实现对应用的响应性能进行测试。响应性能数据例如包括能够反映应用响应速度的响应时间等数据。
在一种实现方式中,计算设备200可以通过串口设备130与测试机150相连,以便与测试机150进行通信。具体地,串口设备130的主控端与服务器120的USB接口相连,串口设备130的被控端与测试机150的USB接口相连。这样,计算设备200可以通过串口设备130及USB接口将指令集发送至测试机150。测试机150在从与串口设备130相连的USB接口获取到指令集之后,可以执行指令集中的多个指令。
另外,在一个实施例中,计算设备在执行响应性能测试脚本后生成的指令集可以包括鼠标移动指令集、键盘输入指令集。具体地说,通过在计算设备200模拟鼠标和键盘的操作,将相应的鼠标移动指令集、键盘输入指令集通过串口设备发送至测试机,以便在测试机150执行相应的鼠标移动指令、键盘输入指令。这样,可以测试在通过鼠标、键盘进行输入操作时的应用响应性能。
应当指出,根据本发明的方法300,采用计算设备与测试机分离的结构,通过在计算设备200中执行响应性能测试脚本,取代在测试机中执行响应性能测试脚本,计算设备200将执行脚本后生成的指令集发送至测试机,在测试机纯粹地执行指令,从而能避免因脚本本身需要占用***资源而影响测试机执行指令和响应性能测试,使得对应用响应性能的测试结果更加准确可靠。
随后,在步骤S330中,获取测试机150在执行指令过程中的视频数据。
在一个实施例中,计算设备还通过视频采集设备140与测试机150相连。具体地,测试机150的显卡接口或主板接口可以连接视频线,通过将视频线连接到视频采集设备140上,使得测试机150与视频采集设备140相连。进而,将视频采集设备140连接于计算设备,便实现视频采集设备140分别与测试机150、计算设备相连。这样,计算设备200可以通过视频采集设备140来获取测试机150的桌面视频信号。
在本实施例中,在测试机150执行指令过程中,计算设备可以通过视频采集设备140来获取测试机150在执行指令过程中的桌面视频信号,随后,计算设备可以将桌面视频信号转换为可以在计算设备200中识别的视频数据,并存储视频数据,从而生成可编辑的视频数据文件。该视频数据文件中记录了测试机150执行指令的整个过程。
最后,在步骤S340中,基于视频数据确定测试机150执行每个指令的响应时间,根据执行每个指令的响应时间来生成应用响应性能测试结果。
可以理解,测试机150执行指令的响应时间可以反映执行与应用响应性能相关的指令的速度,例如,执行应用启动指令的响应时间可以反映应用启动速度,执行界面切换指令的响应时间可以反映界面切换速度,执行文件拷贝指令的响应时间可以反映文件拷贝速度,执行文件保存指令的响应时间可以反映文件保存速度。
这样,通过在测试机150执行指令集中的应用启动指令、界面切换指令、文件拷贝指令或文件保存指令,可以实现对应用的响应性能进行测试,根据执行每个指令的响应时间可以生成应用响应性能测试结果。并且,可以将应用响应性能测试结果显示在计算设备的屏幕上,呈现给测试工作人员。
还需要说明的是,通过重复执行上述步骤S310~S340,可以获取测试机150多次执行指令过程中的多组视频数据,并根据多组视频数据来生成应用响应性能测试结果,这样,有利于提高最终生成的应用响应性能测试结果的准确性、可靠性。
在一个实施例中,基于视频数据确定执行每个指令的响应时间可以根据以下方法执行:
首先,基于预定帧率,对视频数据进行分帧处理生成连续的多帧图片。随后从多帧图片中获取执行每个指令对应的首帧图片、尾帧图片。最后,基于执行每个指令对应的首帧图片、尾帧图片来确定执行每个指令的响应时间。
在一个实施例中,可以利用机器学习方法,来自动查找执行每个指令对应的首帧图片、尾帧图片,并根据首帧图片、尾帧图片来确定执行每个指令的响应时间,将对执行每个指令的计算结果进行汇总生成应用响应性能测试结果,并显示应用响应性能测试结果。这样,利用机器学习的方法来智能识别应用响应性能数据,有利于降低人力成本,并且提高了测试效率和测试结果的准确性。
在一种实现方式中,通过计算多帧图片中每相邻的两帧图片的相似度,根据每相邻的两帧图片的相似度、来将通过对视频数据分帧处理得到的多帧图片划分为一个或多个静止阶段图片集以及一个或多个变化阶段图片集。
图4示出了根据本发明一个实施例的对视频数据进行分帧处理并进行阶段划分的示意图。这里,图4中的“stable range”对应的是静止阶段图片集,其中包含处于稳定阶段的一帧或多帧连续的图片,静止阶段图片集中的相邻图片之间的相似度较高,基本无差异。图4中的“unstable range”对应的是变化阶段图片集,其中包含处于不稳定阶段的一帧或多帧连续的图片,变化阶段图片集中的相邻图片之间的相似度较低,具有较明显的差异。
具体地,通过比较相邻的两帧图片的相似度与预设相似度,当相邻的两帧图片的相似度超过预设相似度时,确定相邻的两帧图片处于稳定阶段。当相邻的两帧图片的相似度小于预设相似度时,确定相邻的两帧图片处于不稳定阶段。这样,最终可以分别将处于稳定阶段并且的连续的多帧图片作为一个静止阶段图片集,将处于不稳定阶段并且连续的多帧图片作为一个变化阶段图片集。应当指出,本发明对预设相似度的具体数值不做限制,其可以由本领域技术人员根据实际情况来设置。
需要说明的是,执行每个指令的过程包括连续的多帧图片,并且,执行每个指令的过程包括一个或多个稳定阶段和不稳定阶段,通常执行指令的开始阶段和结束阶段为不稳定阶段,从而执行每个指令的过程至少包含两个不稳定阶段。对于执行每一个指令而言,每个稳定阶段对应一个静止阶段图片集,每个不稳定阶段对应一个变化阶段图片集。这样,根据对视频数据划分成的一个或多个静止阶段图片集以及一个或多个变化阶段图片集,可以确定执行每个指令的过程中的两个不稳定阶段(开始阶段和结束阶段)对应的两个变化阶段图片集,例如图4中的两个“unstable range”。
根据执行每个指令的过程对应的两个变化阶段图片集(分别对应执行指令的开始阶段、结束阶段),可以从两个变化阶段图片集中分别获取执行指令过程对应的首帧图片、尾帧图片。即,从开始阶段对应的变化阶段图片集中获取第一帧图片来作为执行指令过程对应的首帧图片,从结束阶段对应的变化阶段图片集中获取最后一帧图片来作为执行指令过程对应的尾帧图片。
例如,对于应用启动指令而言,执行应用启动指令的过程包含鼠标右键点击应用图标、鼠标点击打开按钮、等待应用加载完成。从鼠标点击到应用加载完成后打开包含两个不稳定阶段,从而可以从这两个不稳定阶段对应的两个变化阶段图片集中获取到应用启动过程的首帧图片、尾帧图片。
在获取执行每个指令对应的首帧图片、尾帧图片之后,通过确定执行指令对应的首帧图片与尾帧图片之间的图片帧数,根据执行指令对应的首帧图片与尾帧图片之间的图片帧数、前述对视频数据进行分帧处理时的预定帧率,可以确定首帧图片与尾帧图片之间的时长。即,通过将图片帧数与预定帧率相除可以得到首帧图片与尾帧图片之间的时长,该时长即是执行指令的响应时间。
例如,执行应用启动指令过程的首帧图片与尾帧图片之间包含10帧图片,预定帧率为33帧/秒,也即是,每一帧图片对应的时长为1000/33毫秒(ms)。那么执行应用启动指令的响应时间为100/33(ms)。
根据本发明的应用响应性能测试方法300,采用计算设备与测试机分离的结构,在计算设备中执行响应性能测试脚本,将执行脚本后生成的指令集发送至测试机,在测试机纯粹地执行指令,能够避免在测试机中执行响应性能测试脚本而占用***资源、对测试机执行指令的过程造成的影响,排除了脚本本身对测试机性能的干扰。这样,确保对应用响应性能的测试结果更加准确可靠。
A8、如A1-A7中任一项所述的方法,其中,所述指令包括应用启动指令、界面切换指令、文件拷贝指令、文件保存指令中的一种或多种。
A10、如A9所述的***,其中,还包括:串口设备,分别与所述服务器、测试机连接,所述服务器适于通过串口设备将指令集发送至测试机。
A11、如A9或A10所述的***,其中,还包括:视频采集设备,分别与所述服务器、测试机连接,所述视频采集设备适于获取所述测试机在执行指令过程中的桌面视频信号,并将桌面视频信号发送至所述服务器。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,移动终端一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的应用响应性能测试方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与本发明的示例一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
此外,所述实施例中的一些在此被描述成可以由计算机***的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的而非限制性的,本发明的范围由所附权利要求书限定。

Claims (10)

1.一种应用响应性能测试方法,在计算设备中执行,所述方法包括步骤:
执行响应性能测试脚本,生成指令集,所述指令集中包括与应用响应相关的一个或多个指令;
将所述指令集发送至测试机,以便测试机执行所述指令集中的一个或多个指令;
获取所述测试机在执行指令过程中的视频数据;以及
基于所述视频数据确定执行每个指令的响应时间,以生成应用响应性能测试结果。
2.如权利要求1所述的方法,其中,基于所述视频数据确定执行每个指令的响应时间的步骤包括:
基于预定帧率,对所述视频数据进行分帧处理生成连续的多帧图片;
从所述多帧图片中获取执行每个指令对应的首帧图片、尾帧图片;
基于所述执行每个指令对应的首帧图片、尾帧图片来确定执行每个指令的响应时间。
3.如权利要求2所述的方法,其中,从所述多帧图片中获取执行每个指令对应的首帧图片、尾帧图片的步骤包括:
将所述多帧图片划分为一个或多个静止阶段图片集以及一个或多个变化阶段图片集;
确定执行每个指令对应的两个变化阶段图片集,并从两个变化阶段图片集中分别获取执行指令对应的首帧图片、尾帧图片。
4.如权利要求2或3所述的方法,其中,基于所述执行每个指令对应的首帧图片、尾帧图片来确定执行每个指令的响应时间的步骤包括:
根据执行指令对应的首帧图片与尾帧图片之间的图片帧数以及所述预定帧率,来确定所述首帧图片与尾帧图片之间的时长,并将该时长确定为执行指令的响应时间。
5.如权利要求3所述的方法,其中,将所述多帧图片划分为一个或多个静止阶段图片集以及一个或多个变化阶段图片集的步骤包括:
计算相邻图片的相似度,根据所述相邻图片的相似度将所述多帧图片划分为一个或多个静止阶段图片集、一个或多个变化阶段图片集。
6.如权利要求1-5中任一项所述的方法,其中,所述计算设备通过串口设备与所述测试机相连,将所述指令集发送至测试机包括:
将所述指令集通过串口设备发送至测试机。
7.如权利要求1-6中任一项所述的方法,其中,所述计算设备通过视频采集设备与所述测试机相连,获取所述测试机在执行指令过程中的视频数据包括:
通过视频采集设备获取所述测试机在执行指令过程中的桌面视频信号;
将所述桌面视频信号转换为所述计算设备可识别的视频数据,并存储所述视频数据,以生成可编辑的视频数据文件。
8.一种应用响应性能测试***,包括:
服务器,适于执行如权利要求1-7中任一项所述的方法;以及
测试机,与所述服务器相连,适于从所述服务器获取指令集,并执行所述指令集中的一个或多个指令。
9.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-7中任一项所述的方法的指令。
10.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-7中任一项所述方法。
CN202111116473.4A 2021-09-23 2021-09-23 一种应用响应性能测试方法、***及计算设备 Active CN113821438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111116473.4A CN113821438B (zh) 2021-09-23 2021-09-23 一种应用响应性能测试方法、***及计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111116473.4A CN113821438B (zh) 2021-09-23 2021-09-23 一种应用响应性能测试方法、***及计算设备

Publications (2)

Publication Number Publication Date
CN113821438A true CN113821438A (zh) 2021-12-21
CN113821438B CN113821438B (zh) 2024-06-14

Family

ID=78920891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111116473.4A Active CN113821438B (zh) 2021-09-23 2021-09-23 一种应用响应性能测试方法、***及计算设备

Country Status (1)

Country Link
CN (1) CN113821438B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116714021A (zh) * 2023-07-26 2023-09-08 上海迪成智能科技有限公司 基于数据分析的单轨吊巡检机器人智能测试方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108376117A (zh) * 2018-02-07 2018-08-07 网易(杭州)网络有限公司 交互响应的测试方法和设备
US20180286030A1 (en) * 2017-03-31 2018-10-04 Hcl Technologies Limited System and method for testing an electronic device
CN108900776A (zh) * 2018-08-22 2018-11-27 北京百度网讯科技有限公司 用于确定响应时间的方法和装置
CN111008135A (zh) * 2019-12-02 2020-04-14 北京博睿宏远数据科技股份有限公司 App测试方法、装置、设备及存储介质
CN111858318A (zh) * 2020-06-30 2020-10-30 北京百度网讯科技有限公司 一种响应时间的测试方法、装置、设备和计算机存储介质
CN111949509A (zh) * 2019-05-17 2020-11-17 百度在线网络技术(北京)有限公司 应用软件的响应时间测试方法、装置、设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180286030A1 (en) * 2017-03-31 2018-10-04 Hcl Technologies Limited System and method for testing an electronic device
CN108376117A (zh) * 2018-02-07 2018-08-07 网易(杭州)网络有限公司 交互响应的测试方法和设备
CN108900776A (zh) * 2018-08-22 2018-11-27 北京百度网讯科技有限公司 用于确定响应时间的方法和装置
CN111949509A (zh) * 2019-05-17 2020-11-17 百度在线网络技术(北京)有限公司 应用软件的响应时间测试方法、装置、设备及存储介质
CN111008135A (zh) * 2019-12-02 2020-04-14 北京博睿宏远数据科技股份有限公司 App测试方法、装置、设备及存储介质
CN111858318A (zh) * 2020-06-30 2020-10-30 北京百度网讯科技有限公司 一种响应时间的测试方法、装置、设备和计算机存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116714021A (zh) * 2023-07-26 2023-09-08 上海迪成智能科技有限公司 基于数据分析的单轨吊巡检机器人智能测试方法
CN116714021B (zh) * 2023-07-26 2024-01-23 上海迪成智能科技有限公司 基于数据分析的单轨吊巡检机器人智能测试方法

Also Published As

Publication number Publication date
CN113821438B (zh) 2024-06-14

Similar Documents

Publication Publication Date Title
US9841826B2 (en) Automatic test system and test method for computer, record medium, and program product
CN108920380A (zh) 软件兼容性的测试方法、装置、服务器、设备和存储介质
CN107729246B (zh) 针对目标应用的辅助测试方法、装置、设备及存储介质
CN101192153B (zh) 用于从可执行程序代码获得用户界面信息的方法和***
US20170139813A1 (en) Method and device for checking influence of deleting cache file, and mobile terminal
CN111831564A (zh) 一种回归测试方法、装置及计算设备
CN113886162B (zh) 一种计算设备性能测试方法、计算设备及存储介质
WO2018121582A1 (zh) 脚本生成方法及装置
CN113835945A (zh) 芯片的测试方法、装置、设备及***
JP2012103786A (ja) テスト支援装置、制御方法、及びプログラム
US20130013283A1 (en) Distributed multi-pass microarchitecture simulation
CN112416775A (zh) 基于人工智能的软件自动化测试方法、装置及电子设备
CN113821438B (zh) 一种应用响应性能测试方法、***及计算设备
CN113609028A (zh) 一种页面测试方法、计算设备及可读存储介质
US20100153622A1 (en) Data Access Controller and Data Accessing Method
WO2012027886A1 (en) Platform specific application test
CN112181853A (zh) 程序调试方法、装置及***
CN115576711A (zh) 一种返回数据模拟方法、***及计算设备
CN115469991A (zh) 一种定时器队列设置方法、装置、设备及可读存储介质
CN105354075A (zh) 一种软硬件协同仿真的同步方法
CN113190437B (zh) 无线模组的时序分析方法、装置、计算机设备和存储介质
CN115687146A (zh) Bios测试方法、装置、计算机设备和存储介质
CN113722203A (zh) 程序测试方法及装置、电子设备和计算机可读存储介质
US20230054303A1 (en) System and method for electronic circuit resimulation
CN111583351B (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