CN111611144A - 用于处理性能测试数据的方法、装置、计算设备和介质 - Google Patents
用于处理性能测试数据的方法、装置、计算设备和介质 Download PDFInfo
- Publication number
- CN111611144A CN111611144A CN202010464733.6A CN202010464733A CN111611144A CN 111611144 A CN111611144 A CN 111611144A CN 202010464733 A CN202010464733 A CN 202010464733A CN 111611144 A CN111611144 A CN 111611144A
- Authority
- CN
- China
- Prior art keywords
- image
- application server
- processing
- time period
- reference image
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开提供了一种用于处理性能测试数据的方法,包括:通过对应用服务器执行性能测试,得到性能测试数据,应用服务器用于运行应用程序,性能测试数据包括应用服务器在第一时间段内运行应用程序生成的性能指标数据;处理性能测试数据,得到目标图像,目标图像表征了应用服务器的性能指标在第一时间段内随时间变化的情况;获取参考图像,其中,参考图像表征了应用服务器的性能指标在第二时间段内随时间变化的情况;以及对目标图像和参考图像进行图像比对处理,得到处理结果,处理结果表征了应用服务器在第一时间段内运行应用程序的过程是否正常。本公开还提供了一种用于处理性能测试数据的装置、一种计算设备以及一种计算机可读存储介质。
Description
技术领域
本公开涉及计算机技术领域,特别是涉及一种用于处理性能测试数据的方法、一种用于处理性能测试数据的装置、一种计算设备以及一种计算机可读存储介质。
背景技术
在金融类应用软件的测试工作中,涉及大量的性能测试场景,在性能测试过程中需要对应用服务器的性能信息进行收集和评估,目前常用的信息收集和评估方法主要依赖于人力收集和评估。对金融类应用软件性能测试来说,由于版本更迭快,版本迭代期间的数据量增长较快,需要对重要功能进行例行化性能测试,如登陆功能、转账功能等。由于从主机迁移到平台等架构改造多,需要对核心功能进行性能测试,如用户认证功能需要由针对访问主机进行认证变更为针对访问平台数据库进行认证。由于软件出现新增功能,因此需要针对新增更能进行进行性能测试。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题。
性能测试过程需要人力收集和评估服务器的性能信息,重复性劳动较多、耗时耗力。针对当期版本的性能进行评估时,缺乏将历史性能数据作为参考。不同的性能测试人员具有不同的性能评价方法,缺乏统一的性能评估标准。
发明内容
有鉴于此,本公开提供了一种优化的用于处理性能测试数据的方法、用于处理性能测试数据的装置、计算设备和计算机可读存储介质。
本公开的一个方面提供了一种用于处理性能测试数据的方法,包括:通过对应用服务器执行性能测试,得到性能测试数据,其中,所述应用服务器用于运行应用程序,所述性能测试数据包括所述应用服务器在第一时间段内运行所述应用程序生成的性能指标数据,处理所述性能测试数据,得到目标图像,其中,所述目标图像表征了所述应用服务器的性能指标在所述第一时间段内随时间变化的情况,获取参考图像,其中,所述参考图像表征了所述应用服务器的性能指标在第二时间段内随时间变化的情况,对所述目标图像和所述参考图像进行图像比对处理,得到处理结果,其中,所述处理结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
根据本公开的实施例,上述对所述目标图像和所述参考图像进行图像比对处理包括:处理所述目标图像,得到表征所述目标图像的图像特征的第一特征值,处理所述参考图像,得到表征所述参考图像的图像特征的第二特征值,其中,所述第二特征值表征了所述应用服务器在所述第二时间段内运行所述应用程序的过程正常,基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性,其中,所述相似性表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
根据本公开的实施例,上述获取参考图像包括:确定所述目标图像所针对的当前性能指标,基于所述当前性能指标,确定第一图像库中是否包括针对所述当前性能指标的历史图像,其中,所述历史图像包括所述应用服务器运行所述应用程序生成的历史性能指标数据,响应于确定第一图像库中包括针对所述当前性能指标的历史图像,获取所述历史图像作为所述参考图像,响应于确定第一图像库中不包括针对所述当前性能指标的历史图像,获取第二图像库中的新增图像作为所述参考图像,其中,所述新增图像是基于所述当前性能指标的预设指标阈值生成的。
根据本公开的实施例,上述方法还包括:基于所述处理结果,确定所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常,响应于确定所述应用服务器在所述第一时间段内运行所述应用程序的过程正常,将所述目标图像存储至所述第一图像库,以便后续利用所述目标图像作为参考图像来确定所述应用服务器运行所述应用程序的过程是否正常。
根据本公开的实施例,上述第一特征值包括N个第一字符,所述第二特征值包括N个第二字符,所述N为大于1的整数。其中,所述基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性包括:将所述N个第一字符与所述N个第二字符一对一地进行比对,得到所述N个第一字符与所述N个第二字符之间不同字符的字符数量,所述字符数量表征了所述目标图像和所述参考图像之间的相似性。
根据本公开的实施例,上述对所述目标图像和所述参考图像进行图像比对处理包括:确定所述目标图像中的M个目标子区域,其中,M为大于1的整数,确定所述参考图像中的M个参考子区域,将所述M个目标子区域和所述所述M个参考子区域一对一地进行图像比对,得到M个处理子结果,其中,所述M个处理子结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
本公开的另一个方面提供了一种用于处理性能测试数据的装置,包括:测试模块、处理模块、获取模块以及比对模块。其中,测试模块,通过对应用服务器执行性能测试,得到性能测试数据,其中,所述应用服务器用于运行应用程序,所述性能测试数据包括所述应用服务器在第一时间段内运行所述应用程序生成的性能指标数据。处理模块,处理所述性能测试数据,得到目标图像,其中,所述目标图像表征了所述应用服务器的性能指标在所述第一时间段内随时间变化的情况。获取模块,获取参考图像,其中,所述参考图像表征了所述应用服务器的性能指标在第二时间段内随时间变化的情况。比对模块,对所述目标图像和所述参考图像进行图像比对处理,得到处理结果,其中,所述处理结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
根据本公开的实施例,上述比对模块包括:第一处理子模块、第二处理子模块以及第一确定子模块。其中,第一处理子模块,处理所述目标图像,得到表征所述目标图像的图像特征的第一特征值。第二处理子模块,处理所述参考图像,得到表征所述参考图像的图像特征的第二特征值,其中,所述第二特征值表征了所述应用服务器在所述第二时间段内运行所述应用程序的过程正常。第一确定子模块,基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性,其中,所述相似性表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
根据本公开的实施例,上述获取模块包括:第二确定子模块、第三确定子模块、第一获取子模块以及第二获取子模块。其中,第二确定子模块,确定所述目标图像所针对的当前性能指标。第三确定子模块,基于所述当前性能指标,确定第一图像库中是否包括针对所述当前性能指标的历史图像,其中,所述历史图像包括所述应用服务器运行所述应用程序生成的历史性能指标数据。第一获取子模块,响应于确定第一图像库中包括针对所述当前性能指标的历史图像,获取所述历史图像作为所述参考图像。第二获取子模块,响应于确定第一图像库中不包括针对所述当前性能指标的历史图像,获取第二图像库中的新增图像作为所述参考图像,其中,所述新增图像是基于所述当前性能指标的预设指标阈值生成的。
根据本公开的实施例,上述装置还包括:确定模块以及存储模块。其中,确定模块,基于所述处理结果,确定所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。存储模块,响应于确定所述应用服务器在所述第一时间段内运行所述应用程序的过程正常,将所述目标图像存储至所述第一图像库,以便后续利用所述目标图像作为参考图像来确定所述应用服务器运行所述应用程序的过程是否正常。
根据本公开的实施例,上述第一特征值包括N个第一字符,所述第二特征值包括N个第二字符,所述N为大于1的整数。其中,所述基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性包括:将所述N个第一字符与所述N个第二字符一对一地进行比对,得到所述N个第一字符与所述N个第二字符之间不同字符的字符数量,所述字符数量表征了所述目标图像和所述参考图像之间的相似性。
根据本公开的实施例,上述对所述目标图像和所述参考图像进行图像比对处理包括:确定所述目标图像中的M个目标子区域,其中,M为大于1的整数,确定所述参考图像中的M个参考子区域,将所述M个目标子区域和所述所述M个参考子区域一对一地进行图像比对,得到M个处理子结果,其中,所述M个处理子结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
本公开的另一方面提供了一种计算设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。
本公开的另一方面提供了一种非易失性可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
根据本公开的实施例,利用如上所述的用于处理性能测试数据的方法,可以至少部分地解决相关技术的性能测试耗时耗力、缺乏将历史性能数据作为参考、缺乏统一的性能评估标准的问题。因此实现降低了测试人员评估的评估难度、减少了评估时间、提升了评估效率的技术效果。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开实施例的处理性能测试数据的系统架构;
图2示意性示出了根据本公开实施例的用于处理性能测试数据的方法的流程图;
图3示意性示出了根据本公开实施例的二维曲线图的示意图;
图4示意性示出了根据本公开实施例的图像比对的流程图;
图5示意性示出了根据本公开实施例的获取参考图像的流程图;
图6示意性示出了根据本公开另一实施例的用于处理性能测试数据的方法的流程图;
图7示意性示出了根据本公开实施例的处理性能测试数据的结构图;
图8示意性示出了根据本公开实施例的处理性能测试数据的系统流程图;
图9示意性示出了根据本公开实施例的用于处理性能测试数据的装置的框图;
图10示意性示出了根据本公开实施例的比对模块的框图;
图11示意性示出了根据本公开实施例的获取模块的框图;
图12示意性示出了根据本公开另一实施例的用于处理性能测试数据的装置的框图;以及
图13示意性示出了根据本公开实施例的用于实现处理性能测试数据的计算机系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程控制装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。
因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读存储介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
本公开的实施例提供了一种用于处理性能测试数据的方法,包括:通过对应用服务器执行性能测试,得到性能测试数据,其中,应用服务器用于运行应用程序,性能测试数据包括应用服务器在第一时间段内运行应用程序生成的性能指标数据。然后,处理性能测试数据,得到目标图像,其中,目标图像表征了应用服务器的性能指标在第一时间段内随时间变化的情况,并可以获取参考图像,其中,参考图像表征了应用服务器的性能指标在第二时间段内随时间变化的情况。接下来,对目标图像和参考图像进行图像比对处理,得到处理结果,其中,处理结果表征了应用服务器在第一时间段内运行应用程序的过程是否正常。
图1示意性示出了根据本公开实施例的处理性能测试数据的系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104、应用服务器105和测试设备106。网络104用以在终端设备101、102、103和应用服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与应用服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
应用服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。例如,该应用服务器105例如安装了多个应用程序,应用服务器通过运行应用程序来对用户请求等数据进行处理得到处理结果。
测试设备106例如可以包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机,该测试设备106例如可以对应用服务器105进行性能测试得到性能测试数据,并对性能测试数据进行处理以便确定应用服务器在运行应用程序的过程是否正常。
本公开实施例所提供的用于处理性能测试数据的方法一般可以由测试设备106执行。相应地,本公开实施例所提供的用于处理性能测试数据的装置一般可以设置于测试设备106中。
应该理解,图1中的终端设备、网络、应用服务器和测试设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面结合图1的系统架构,参考图2~图6来描述根据本公开示例性实施方式的用于处理性能测试数据的方法。需要注意的是,上述系统架构仅是为了便于理解本公开的精神和原理而示出,本公开的实施方式在此方面不受任何限制。
图2示意性示出了根据本公开实施例的用于处理性能测试数据的方法的流程图。
如图2所示,本公开实施例的用于处理性能测试数据的方法例如可以包括以下操作S210~操作S240。
在操作S210,通过对应用服务器执行性能测试,得到性能测试数据,其中,应用服务器用于运行应用程序,性能测试数据包括应用服务器在第一时间段内运行应用程序生成的性能指标数据。
根据本公开实施例,应用服务器中例如安装了多个应用程序,应用服务器通过运行应用程序来对相关数据进行处理。为了保证应用服务器能够正常运行应用程序以便给客户更好的服务,需要实时测试应用服务器在运行应用程序的过程中是否存在安全问题。
为了对应用服务器进行性能测试,可以获取应用服务器在第一时间段内运行应用程序生成的性能测试数据,该性能测试数据例如包括应用服务器的性能指标数据。然后,可以基于性能指标数据来确定应用服务器在运行应用程序的过程中是否正常。其中,第一时间段例如可以是过去15分钟、1小时、1天等等。性能指标数据例如可以包括应用服务器在第一时间段内的CPU使用率、内存使用率等等。
在操作S220,处理性能测试数据,得到目标图像,其中,目标图像表征了应用服务器的性能指标在第一时间段内随时间变化的情况。
根据本公开实施例,例如处理性能测试数据得到的目标图像为二维曲线图,该二维曲线图例如包括横坐标轴和纵坐标轴,横坐标轴例如为时间轴,纵坐标轴例如为指标轴。其中,二维曲线图例如包括与第一时间段内性能指标随时间的变化情况,例如包括与多个时刻点一一对应的性能指标数据值。即,二维曲线图表征了性能指标在第一时间段内随着时间变化的曲线。
图3示意性示出了根据本公开实施例的二维曲线图的示意图。
如图3所示,例如以目标图像为例,目标图像的性能指标例如为CPU使用率,则二维曲线图的横坐标轴例如为时间轴,纵坐标轴例如为指标轴,图3表示了在第一时间段内(例如15分钟)应用服务器的CPU使用率的随着时间变化的曲线。
在操作S230,获取参考图像,其中,参考图像表征了应用服务器的性能指标在第二时间段内随时间变化的情况。
根据本公开实施例,参考图像例如也是二维曲线图。该参考图像与目标图像类似,不同之处在于参考图像是性能指标在第二时间段内性能指标对时间变化的曲线。其中,第二时间段例如在第一时间段之前。例如,第一时间段为今天12:00~12:15,则第二时间段例如可以是昨天8:00~8:15。其中,第一时间段和第二时间段的时间长度例如相同,例如可以均为15分钟。
根据本公开实施例,目标图像和参考图像所表征的性能指标例如相同。例如,目标图像的性能指标为CPU使用率,则参考图像的性能指标也为CPU使用率。本公开实施例关于获取参考图像的具体过程将在图5中描述。
接下来,在操作S240,对目标图像和参考图像进行图像比对处理,得到处理结果,其中,处理结果表征了应用服务器在第一时间段内运行应用程序的过程是否正常。
本公开实施例的参考图像例如表征了应用服务器在第二时间段内运行应用程序的过程正常。因此,可以利用该参考图像作为基准来确定目标图像所表征的应用服务器在第一时间段内运行应用程序的过程是否正常。例如,通过对目标图像和参考图像进行图像比对得到处理结果,该处理结果例如表征了目标图像和参考图像之间的相似性,如果目标图像和参考图像之间的相似性大于预设阈值,则可以表征应用服务器在第一时间段内运行应用程序的过程正常。如果目标图像和参考图像之间的相似性小于等于预设阈值,则可以表征应用服务器在第一时间段内运行应用程序的过程异常。本公开实施例关于对目标图像和参考图像进行图像比对的具体过程将在图4中描述。
可以理解,本公开实施例通过将性能指标由数值形式转换为图像形式,并通过图像比对来评估应用服务器运行应用程序的过程是否正常,从而降低了测试人员评估的评估难度、减少了评估时间、提升了评估效率。另外,在评估过程中加入了历史数据,例如基于历史的参考图像来评估当前的目标图像,更容易发现应用服务器运行应用程序中存在的问题。
图4示意性示出了根据本公开实施例的图像比对的流程图。
如图4所示,上述操作S240中关于对目标图像和参考图像进行图像比对处理例如可以包括以下操作S241~操作S243。
在操作S241,处理目标图像,得到表征目标图像的图像特征的第一特征值。
根据本公开实施例,例如采用pHash(图像感知)算法来对目标图像和参考图像进行图像比对处理。其中,pHash算法是基于DCT(Discrete Cosine Transform,离散余弦变换)方式来得到图像的pHash值,其中,DCT方式例如主要用于对数据或图像进行压缩,能够将空域的信号转换到频域上,具有良好的去相关性的性能。
例如,利用pHash算法处理目标图像,得到表征目标图像的图像特征的第一特征值,第一特征值例如为目标图像的pHash值。
在操作S242,处理参考图像,得到表征参考图像的图像特征的第二特征值,其中,第二特征值表征了应用服务器在第二时间段内运行应用程序的过程正常。
根据本公开实施例,例如利用pHash算法处理参考图像,得到表征参考图像的图像特征的第二特征值,第二特征值例如为参考图像的pHash值。
接下来,在操作S243,基于第一特征值和第二特征值,确定目标图像和参考图像之间的相似性,其中,相似性表征了应用服务器在第一时间段内运行应用程序的过程是否正常。
例如,通过计算第一特征值和第二特征值之间的距离来确定目标图像和参考图像之间的相似性。其中,第一特征值和第二特征值之间的距离越小,则表征目标图像和参考图像之间的相似程度越高。第一特征值和第二特征值之间的距离例如可以是汉明距离。当第一特征值和第二特征值之间的汉明距离小于预设距离值时,可以确定目标图像所表征的应用服务器在第一时间段内运行应用程序的过程正常。
根据本公开实施例,汉明距离例如表示两个长度相同的字符串之间不同字符的个数。在本公开实施例中,两个长度相同的字符串例如可以分别为第一特征值和第二特征值。
例如,第一特征值包括N个第一字符,第二特征值包括N个第二字符,N为大于1的整数。
其中,计算第一特征值和第二特征值之间的汉明距离例如包括将:N个第一字符和N个第二字符进行异或运算,得到N个第一字符和N个第二字符之间不同字符的个数。
具体地,可以将N个第一字符与N个第二字符一对一地进行比对,得到N个第一字符与N个第二字符之间不同字符的字符数量,字符数量表征了目标图像和参考图像之间的相似性。其中,字符数量越小,表明第一特征值和第二特征值之间的汉明距离越小,则表示目标图像和参考图像之间的相似程度越高。
例如,第一特征值(N=8个第一字符)可以为“11011001”,第二特征值(N=8个第二字符)可以为“10011011”,则N个第一字符与N个第二字符之间不同字符的字符数量为2,即,第一特征值和第二特征值之间的汉明距离为2。
在一种实施例中,例如确定目标图像中的M个目标子区域,确定参考图像中的M个参考子区域,M为大于1的整数。然后,将M个目标子区域和M个参考子区域一对一地进行图像比对,得到M个处理子结果,其中,M个处理子结果表征了应用服务器在第一时间段内运行应用程序的过程是否正常。
例如,可以依次确定M个目标子区域中每个目标子区域的第一特征值,得到M个第一特征值。以及依次确定M个参考子区域中每个参考子区域的第二特征值,得到M个第二特征值。
然后,将M个第一特征值一对一地与M个第二特征值进行比对,得到M个汉明距离,该M个汉明距离例如为M个处理子结果。然后基于该M个汉明距离来判断目标图像所表征的应用服务器在第一时间段内运行应用程序的过程是否正常。例如,如果M个汉明距离中具有m个汉明距离小于预设距离值,且m与M的比值大于预设比值,则可以确定应用服务器在第一时间段内运行应用程序的过程正常。
根据本公开实施例,例如目标图像的图像尺寸为32*32,则M个目标子区域中的每个目标子区域的区域尺寸例如为8*8,M个目标子区域中的各个子区域例如可以不重合,或者M个目标子区域中的各个子区域可以有重合的部分,本公开实施例不限制M个目标子区域的具体获取方式。例如,从目标图像中确定目标子区域时,可以以8*8的移动窗口按照预设移动距离在目标图像中移动,每次移动后移动窗口所在的8*8区域即为目标子区域。同理,从参考图像中确定参考子区域的过程与从目标图像中确定目标子区域的过程相同或类似,在此不再赘述。可以理解,各个目标子区域在目标图像中的位置信息和各个参考子区域在参考图像中的位置信息一致。
根据本公开实施例,M个第一特征值例如包括M个pHash值,M个第二特征值例如也包括M个pHash值。每个第一特征值的计算过程例如与每个第二特征值的计算过程相同或类似。
例如,以计算一个目标子区域的pHash值为例。将目标子区域处理为灰度图,初始化目标子区域的pHash值为0。然后,从左到右以及从上到下遍历目标子区域的每一个元素,如果第i行j列元素的灰度值G(i,j)>=a,则pHash=pHash(初始为0)+1,如果第i行第j列元素G(i,j)<a,则pHash=pHash+0。其中,a例如为预设灰度值。当得到目标子区域pHash值后,可以进一步处理该pHash得到二进制字符串,便于基于二进制字符串计算汉明距离。
图5示意性示出了根据本公开实施例的获取参考图像的流程图。
如图5所示,上述操作S230中关于获取参考图像例如可以包括以下操作S231~操作S234。
在操作S231,确定目标图像所针对的当前性能指标。例如,当前性能指标可以为CPU使用率。
在操作S232,基于当前性能指标,确定第一图像库中是否包括针对当前性能指标的历史图像,其中,历史图像包括应用服务器运行应用程序生成的历史性能指标数据。
根据本公开实施例,第一图像库中例如存储了与多种性能指标相关的历史图像。历史图像例如是过去应用服务器运行应用程序生成的历史性能指标数据,该历史图像表征了应用服务器运行应用程序的过程正常。其中,第一图像库中关于每一种性能指标,均可以包括一个或多个历史图像。例如,关于性能指标为CPU使用率,第一图像库中例如可以包括关于CPU使用率的多个历史图像。例如,关于性能指标为内存使用率,第一图像库中例如包括关于内存使用率的多个历史图像。
在操作S233,响应于确定第一图像库中包括针对当前性能指标的历史图像,获取历史图像作为参考图像。例如,如果第一图像库中包括当前性能指标为CPU使用率的多个历史图像,则获取当前性能指标为CPU使用率的多个历史图像作为多个参考图像,该多个参考图像例如表征了在过去应用服务器运行应用程序的过程正常。并将目标图像和多个参考图像中的每个参考图像依次进行图像比对,如果目标图像与多个参考图像中的大部分参考图像相似,则确定应用服务器运行应用程序的过程是正常的。
接下来,在操作S234,响应于确定第一图像库中不包括针对当前性能指标的历史图像,获取第二图像库中的新增图像作为参考图像,其中,新增图像是基于当前性能指标的预设指标阈值生成的。
根据本公开实施例,如果第一图像库中不包括针对当前性能指标的历史图像,则从第二图像库中获取新增图像为参考图像。其中,当前性能指标的预设指标阈值例如可以是70%,在当前性能指标为CPU使用率时,预设指标阈值70%例如表征了应用服务器在运行应用程序时CPU使用率不超过70%时为正常运行。其中,新增图像例如可以是二维曲线图,该二维曲线图例如包括横坐标轴和纵坐标轴,基于预设指标阈值生成二维曲线图例如包括:该二维曲线图的横坐标轴取值范围为第二时间段(例如15分钟),该曲线的纵坐标轴取值为CPU使用率为70%,即,该二维曲线图包括平行于横坐标轴的一条线段。
图6示意性示出了根据本公开另一实施例的用于处理性能测试数据的方法的流程图。
如图6所示,本公开实施例的用于处理性能测试数据的方法例如可以包括操作S210~操作S240以及以下操作S250~操作S260。其中,操作S210~操作S240例如与图2所描述的操作相同或类似,在此不再赘述。
在操作S250,基于处理结果,确定应用服务器在第一时间段内运行应用程序的过程是否正常。
接下来,在操作S260,响应于确定应用服务器在第一时间段内运行应用程序的过程正常,将目标图像存储至第一图像库,以便后续利用目标图像作为参考图像来确定应用服务器运行应用程序的过程是否正常。
例如,如果目标图像和参考图像之间的相似性大于预设阈值,则可以表征应用服务器在第一时间段内运行应用程序的过程正常,并可以将目标图像存入第一图像库中。
图7示意性示出了根据本公开实施例的处理性能测试数据的结构图。
如图7所示,本公开实施例的处理性能测试数据的结构图例如可以包括性能信息采集模块、性能信息智能分析模块和性能结果展示模块。
例如,当性能测试脚本启动时,性能信息采集模块会把采集探测器exporter自动部署到被测软件所在的应用服务器,同时将应用服务器的IP地址等信息注册到Consul集群,Consul集群是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件。然后,Prometheus集群从Consul集群拉取应用服务器的机器信息,然后从应用服务器拉取采集探测器exporter采集到的系统性能信息并存储至Prometheus集群自身,Prometheus集群是一个集数据收集存储、数据查询和数据图表显示于一身的监控组件。接下来,Grafana可以查询Prometheus集群存储的信息并可视化展示,Grafana是网络架构和应用分析中流行的时序数据展示工具,主要用于大规模指标数据的可视化展示。
性能信息智能分析模块例如将Prometheus集群中的数据按照不同的维度(如系统的CPU维度、内存维度、连接数维度等)转化为图形,图形的种类和个数可以由用户自定义定制,同时性能信息智能分析模块包含两个指标库,一个是针对性能测试场景有历史结果的存量指标库(相当于上文提及的第一图像库),另一个是针对新增性能测试场景的新增指标库(相当于上文提及的第二图像库)。当性能信息智能分析模块对目标图像和指标库中的参考图像进行图像比对之后,得到的比对结果例如可以输出给测试人员。
根据本公开实施例,性能信息采集模块、性能信息智能分析模块和性能结果展示模块的具体结构例如如下描述。
根据本公开实施例,性能信息采集模块例如用于采集性能测试场景中应用服务器性能信息。其中,性能信息采集模块例如包括管控模块701、Consul集群702、应用软件服务器703以及Prometheus集群704。
管控模块701例如将应用服务器信息注册到Consul集群702,下送系统信息采集器exporter到应用服务器并启动exporter。
Consul集群702用于动态管理应用服务器信息,能够保证信息的真实可用。
应用服务器703启动的exporter采集器会实时采集性能数据。
Prometheus集群704,从Consul集群702获取应用服务器信息后,再从应用服务器703拉取应用服务器exporter实时采集的数据并存储。
根据本公开实施例,性能信息智能分析模块例如用于对性能测试中应用服务器的性能表现进行分析和评估。其中,性能信息智能分析模块例如包括图像生成模块705、指标库706、分析模块707以及生成结果模块708。
图像生成模块705例如从Prometheus集群704中按不同的维度(如CPU维度、内存维度等)拉取相应的数据并生成二维曲线图像。其中,二维曲线图像中的横坐标表示时间轴,纵坐标表示性能指标数据值。
指标库706例如包含两个指标库,分别是存量指标库(相当于上文提及的第一图像库)和新增指标库(相当于上文提及的第二图像库)。其中,存量指标库存储的是不同维度下历史存量性能数据的参考图像(如CPU图像、内存图像)。新增指标库是按照测试人员设定的性能指标生成的性能数据的参考图像。
分析模块707获取图像生成模块705中的目标图像和指标库706中相应的参考图像,将目标图像和参考图像处理成相同的坐标维度后进行图像比对。
生成结果模块708获取分析模块707的图像比对结果,如果结果符合标准(表征应用服务器运行正常),则将当前的性能数据图像(目标图像)存储至存量指标库。
根据本公开实施例,性能结果展示模块例如包括Grafana集群709以及图像和结果展示模块710。
Grafana集群709用于将Prometheus集群704中的信息进行图形化等直观展示,能够展示不同时间区域的性能信息。
结果展示模块710从生成结果模块708中获取图像对比结果和性能信息智能分析模块的判定结果,将图像和结果直观展示给测试人员。
图8示意性示出了根据本公开实施例的处理性能测试数据的系统流程图。
如图8所示,本公开实施例的处理性能测试数据的系统流程例如包括一些操作S801~操作S823。
在操作S801,登记应用服务器IP地址等信息,用于后续在执行操作S802时进行服务注册和在执行操作S803时执行安装部署exporter。
在操作S802,将操作S801登记的应用服务器信息注册到Consul集群,Consul集群可实现应用服务器信息的真实可用和动态管理。
在操作S803,将性能信息采集器exporter下送部署到操作S801登记的应用服务器上并启动exporter进程。
在操作S804,表示Prometheus集群从Consul集群动态拉取应用服务器信息,并能够进行定时检测,一旦应用服务器信息发生变化,Prometheus集群会动态更新应用服务器信息。
在操作S805,表示Prometheus集群拉取应用服务器上exporter进程采集到的性能数据,定时拉取相关数据。
在操作S806,将操作S805获取的应用服务器系统信息数据存储至Prometheus集群中。
在操作S807,将操作S806中存储的数据通过Grafana进行图形直观展示。
在操作S808,获取操作S805存储的数据,按照不同的指标生成指定时间区域的图像,如应用服务器的CPU数据图像、内存数据图像等。
在操作S809,使用指标库进行智能分析和评估,通过性能测试脚本判断当前性能测试场景是否为存量场景,如果为是,则执行操作S810,如果为否,则执行操作S811。
在操作S810,从存量指标库中获取参考图像。存量指标库中存储的是性能测试场景的历史存量数据图像,如针对登陆场景的CPU数据图像等,按照测试场景、数据种类等采用多文件路径存储,便于快速遍历确认相关图像。
在操作S811,从新增指标库中获取参考图像。新增指标库中包括按照测试人员指定的性能指标生成对应的图像,如指定应用服务器CPU使用率低于70%,则新增指标库会生成最大值为70%的CPU数据图像。
在操作S812,进行图像比对,使用感知哈希算法进行图像比对,获取操作S808中的目标图像,获取操作S810或操作S811中的参考图像,并将目标图像和参考图像的坐标维度统一到一个标准,图像比对的具体过程例如为包括如下操作S813-操作S820。
在操作S8113,通过pHash算法进行图片缩放,统一将图片尺寸缩放为32*32。
在操作S814,将非单通道图片转为单通道灰度图。
在操作S815,计算32*32数据矩阵的离散余弦变换后对应的32*32数据矩阵。
在操作S816,获取操作S815中得到的32*32数据矩阵中8*8子区域。其中,8*8子区域例如可以是32*32数据矩阵中位于左上角的8*8子区域。
在操作S817,通过操作S816可计算得到一个8*8的整数矩阵G,计算G矩阵中所有元素的平均值,a例如为预设灰度值。
在操作S818,计算图像指纹,首先初始化图片的pHash为0,其次,从左到右以及从上到下遍历矩阵G的每一个元素,如果第i行j列元素G(i,j)>=a,则pHash=pHash+1,如果第i行第j列元素G(i,j)<a,则pHash=pHash+0。最终计算得到pHash值的二进制表示。
在操作S819,比较两张图片的pHash值的二进制值的汉明距离,汉明距离表示两个等长字符串在对应位置上不同字符的数目。
在操作S820,判断汉明距离是否小于阈值,如果小于阈值则认为两张图片相似,如果不小于阈值则认为两张图片不相似。
在操作S821,获取操作S812的判断结果,如果图像比对结果满足要求则执行操作S822,如果不满足则执行操作S823。
在操作S822,将当前性能测试场景产出的图像存储至存量指标库,用于未来的性能测试图像比对。
在操作S823,进行图像和判断结果汇总,将操作S807、操作S821、操作S822输出的图像和判断结果汇总整理,作为统一出口展示给测试人员。
为了便于理解本公开实施例的技术方案,以下结合个人网银中登陆性能测试场景,详细阐述本公开实施例的测试流程。
性能测试启动前,测试人员需要登记个人网银登陆服务器的IP地址等信息。
管控模块会将登记的服务器信息注册到Consul集群,Consul集群会检测服务器的健康性,同时管控模块会将数据采集器exporter部署到该服务器并启动服务进行数据采集。
Prometheus集群从Consul集群获取应用服务器信息,如果Consul集群检测到应用服务器信息不可用时,Prometheus集群则获取不到服务器数据。
当Prometheus集群从Consul集群获取到应用服务器信息时,Prometheus集群从应用服务器拉取exporter采集的系统数据,并存储至自身数据库。
Grafana从Prometheus集群获取相关数据,并按数据种类和时间顺序图形化展示,如内存在某段时间内的使用曲线。
性能数据智能分析模块将Prometheus集群存储的数据按照不同种类和不同时间转换为性能数据图像,如生成15分钟的应用服务器内存使用曲线图像。
通过性能测试脚本等信息判断当前性能测试场景是否为历史场景,如果是历史场景则从存量指标库中获取对应的性能数据图像,如存量的内存使用曲线图像。如果是新增场景,则根据测试人员指定的性能指标生成相应的图像,如测试人员规定内存使用率最大不超过70%,新增指标库会生成对应的图像。
将当前性能测试产生的图像和指标库中的图像进行图像比对,使用pHash算法进行比对,判断两个图像是否相似。
如果图像比对结果表示两个图像相似,则代表当前的性能测试场景达标,如内存使用率图像和指标库中的图像相似,则代表当前测试场景的内存使用率达到标准。
将达到标准的图像按照场景、数据种类存储到存量指标库中指定的文件路径下,便于未来测试时进行比对。
最后,通过Grafana展示图像、图像比对图像和判断结果统一汇总展示给测试人员。
可以理解,本公开实施例的技术方案能够实时收集性能测试中服务器的性能数据,节约了人力部署监控脚本的时间。针对例行化性能测试,将当前性能数据和历史性能数据的对比和分析,更容易发现版本迭代和数据库存储量增长带来的性能问题。另外,本公开实施例规范了性能评估标准,避免了不同测试人员、不同测试场景产生性能评估差异问题。存量指标库采用了增强学习的方法,每次性能测试均会补充大量的存量指标图像,逐步加强性能分析和评估的准确性。通过将性能数据由数值转变为图像,降低了测试人员评估的难度,减少了评估的时间,提升了评估的效率。再者,性能数据采集模块和性能数据智能分析模块均采用分布式架构部署,保证了整个系统的稳定性和可靠性。
本公开的另一实施例还提供了一种计算设备,该计算设备例如包括一个或多个处理器以及存储器。其中,存储器用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现图2~图6中所示的方法。
图9示意性示出了根据本公开实施例的用于处理性能测试数据的装置的框图。
如图9所示,用于处理性能测试数据的装置900例如可以包括测试模块910、处理模块920、获取模块930以及比对模块940。
测试模块910可以用于通过对应用服务器执行性能测试,得到性能测试数据,其中,应用服务器用于运行应用程序,性能测试数据包括应用服务器在第一时间段内运行应用程序生成的性能指标数据。根据本公开实施例,测试模块910例如可以执行上文参考图2描述的操作S210,在此不再赘述。
处理模块920可以用于处理性能测试数据,得到目标图像,其中,目标图像表征了应用服务器的性能指标在第一时间段内随时间变化的情况。根据本公开实施例,处理模块920例如可以执行上文参考图2描述的操作S220,在此不再赘述。
获取模块930可以用于获取参考图像,其中,参考图像表征了应用服务器的性能指标在第二时间段内随时间变化的情况。根据本公开实施例,获取模块930例如可以执行上文参考图2描述的操作S230,在此不再赘述。
比对模块940可以用于对目标图像和参考图像进行图像比对处理,得到处理结果,其中,处理结果表征了应用服务器在第一时间段内运行应用程序的过程是否正常。根据本公开实施例,比对模块940例如可以执行上文参考图2描述的操作S240,在此不再赘述。
图10示意性示出了根据本公开实施例的比对模块的框图。
如图10所示,比对模块940例如可以包括第一处理子模块941、第二处理子模块942以及第一确定子模块943。
第一处理子模块941可以用于处理目标图像,得到表征目标图像的图像特征的第一特征值。根据本公开实施例,第一处理子模块941例如可以执行上文参考图4描述的操作S241,在此不再赘述。
第二处理子模块942可以用于处理参考图像,得到表征参考图像的图像特征的第二特征值,其中,第二特征值表征了应用服务器在第二时间段内运行应用程序的过程正常。根据本公开实施例,第二处理子模块942例如可以执行上文参考图4描述的操作S242,在此不再赘述。
第一确定子模块943可以用于基于第一特征值和第二特征值,确定目标图像和参考图像之间的相似性,其中,相似性表征了应用服务器在第一时间段内运行应用程序的过程是否正常。根据本公开实施例,第一确定子模块943例如可以执行上文参考图4描述的操作S243,在此不再赘述。
图11示意性示出了根据本公开实施例的获取模块的框图。
如图11所示,获取模块930例如可以包括第二确定子模块931、第三确定子模块932、第一获取子模块933以及第二获取子模块934。
第二确定子模块931可以用于确定目标图像所针对的当前性能指标。根据本公开实施例,第二确定子模块931例如可以执行上文参考图5描述的操作S231,在此不再赘述。
第三确定子模块932可以用于基于当前性能指标,确定第一图像库中是否包括针对当前性能指标的历史图像,其中,历史图像包括应用服务器运行应用程序生成的历史性能指标数据。根据本公开实施例,第三确定子模块932例如可以执行上文参考图5描述的操作S232,在此不再赘述。
第一获取子模块933可以用于响应于确定第一图像库中包括针对当前性能指标的历史图像,获取历史图像作为参考图像。根据本公开实施例,第一获取子模块933例如可以执行上文参考图5描述的操作S233,在此不再赘述。
第二获取子模块934可以用于响应于确定第一图像库中不包括针对当前性能指标的历史图像,获取第二图像库中的新增图像作为参考图像,其中,新增图像是基于当前性能指标的预设指标阈值生成的。根据本公开实施例,第二获取子模块934例如可以执行上文参考图5描述的操作S234,在此不再赘述。
图12示意性示出了根据本公开另一实施例的用于处理性能测试数据的装置的框图。
如图12所示,用于处理性能测试数据的装置1200例如可以包括测试模块910、处理模块920、获取模块930、比对模块940、确定模块1210以及存储模块1220。其中,测试模块910、处理模块920、获取模块930以及比对模块940例如与图9所描述的模块相同或类似,在此不再赘述。
确定模块1210可以用于基于处理结果,确定应用服务器在第一时间段内运行应用程序的过程是否正常。根据本公开实施例,确定模块1210例如可以执行上文参考图6描述的操作S250,在此不再赘述。
存储模块1220可以用于响应于确定应用服务器在第一时间段内运行应用程序的过程正常,将目标图像存储至第一图像库,以便后续利用目标图像作为参考图像来确定应用服务器运行应用程序的过程是否正常。根据本公开实施例,存储模块1220例如可以执行上文参考图6描述的操作S260,在此不再赘述。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图13示意性示出了根据本公开实施例的用于实现处理性能测试数据的计算机系统的方框图。图13示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图13所示,计算机系统1300包括处理器1301、计算机可读存储介质1302。该系统1300可以执行根据本公开实施例的方法。
具体地,处理器1301例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1301还可以包括用于缓存用途的板载存储器。处理器1301可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质1302,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
计算机可读存储介质1302可以包括计算机程序1303,该计算机程序1303可以包括代码/计算机可执行指令,其在由处理器1301执行时使得处理器1301执行根据本公开实施例的方法或其任何变形。
计算机程序1303可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序1303中的代码可以包括一个或多个程序模块,例如包括1303A、模块1303B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器1301执行时,使得处理器1301可以执行根据本公开实施例的方法或其任何变形。
根据本公开的实施例,测试模块910、处理模块920、获取模块930、第二确定子模块931、第三确定子模块932、第一获取子模块933、第二获取子模块934、比对模块940、第一处理子模块941、第二处理子模块942、第一确定子模块943、确定模块1210以及存储模块1220中的至少一个可以实现为参考图13描述的计算机程序模块,其在被处理器1301执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现上述方法。
根据本公开的实施例,计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。
Claims (14)
1.一种用于处理性能测试数据的方法,包括:
通过对应用服务器执行性能测试,得到性能测试数据,其中,所述应用服务器用于运行应用程序,所述性能测试数据包括所述应用服务器在第一时间段内运行所述应用程序生成的性能指标数据;
处理所述性能测试数据,得到目标图像,其中,所述目标图像表征了所述应用服务器的性能指标在所述第一时间段内随时间变化的情况;
获取参考图像,其中,所述参考图像表征了所述应用服务器的性能指标在第二时间段内随时间变化的情况;以及
对所述目标图像和所述参考图像进行图像比对处理,得到处理结果,其中,所述处理结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
2.根据权利要求1所述的方法,其中,所述对所述目标图像和所述参考图像进行图像比对处理包括:
处理所述目标图像,得到表征所述目标图像的图像特征的第一特征值;
处理所述参考图像,得到表征所述参考图像的图像特征的第二特征值,其中,所述第二特征值表征了所述应用服务器在所述第二时间段内运行所述应用程序的过程正常;以及
基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性,其中,所述相似性表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
3.根据权利要求1或2所述的方法,其中,所述获取参考图像包括:
确定所述目标图像所针对的当前性能指标;
基于所述当前性能指标,确定第一图像库中是否包括针对所述当前性能指标的历史图像,其中,所述历史图像包括所述应用服务器运行所述应用程序生成的历史性能指标数据;
响应于确定第一图像库中包括针对所述当前性能指标的历史图像,获取所述历史图像作为所述参考图像;以及
响应于确定第一图像库中不包括针对所述当前性能指标的历史图像,获取第二图像库中的新增图像作为所述参考图像,其中,所述新增图像是基于所述当前性能指标的预设指标阈值生成的。
4.根据权利要求3所述的方法,还包括:
基于所述处理结果,确定所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常;以及
响应于确定所述应用服务器在所述第一时间段内运行所述应用程序的过程正常,将所述目标图像存储至所述第一图像库,以便后续利用所述目标图像作为参考图像来确定所述应用服务器运行所述应用程序的过程是否正常。
5.根据权利要求2所述的方法,其中,所述第一特征值包括N个第一字符,所述第二特征值包括N个第二字符,所述N为大于1的整数;
其中,所述基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性包括:
将所述N个第一字符与所述N个第二字符一对一地进行比对,得到所述N个第一字符与所述N个第二字符之间不同字符的字符数量,所述字符数量表征了所述目标图像和所述参考图像之间的相似性。
6.根据权利要求1或5所述的方法,其中,所述对所述目标图像和所述参考图像进行图像比对处理包括:
确定所述目标图像中的M个目标子区域,其中,M为大于1的整数;
确定所述参考图像中的M个参考子区域;以及
将所述M个目标子区域和所述所述M个参考子区域一对一地进行图像比对,得到M个处理子结果,其中,所述M个处理子结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
7.一种用于处理性能测试数据的装置,包括:
测试模块,通过对应用服务器执行性能测试,得到性能测试数据,其中,所述应用服务器用于运行应用程序,所述性能测试数据包括所述应用服务器在第一时间段内运行所述应用程序生成的性能指标数据;
处理模块,处理所述性能测试数据,得到目标图像,其中,所述目标图像表征了所述应用服务器的性能指标在所述第一时间段内随时间变化的情况;
获取模块,获取参考图像,其中,所述参考图像表征了所述应用服务器的性能指标在第二时间段内随时间变化的情况;以及
比对模块,对所述目标图像和所述参考图像进行图像比对处理,得到处理结果,其中,所述处理结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
8.根据权利要求7所述的装置,其中,所述比对模块包括:
第一处理子模块,处理所述目标图像,得到表征所述目标图像的图像特征的第一特征值;
第二处理子模块,处理所述参考图像,得到表征所述参考图像的图像特征的第二特征值,其中,所述第二特征值表征了所述应用服务器在所述第二时间段内运行所述应用程序的过程正常;以及
第一确定子模块,基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性,其中,所述相似性表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
9.根据权利要求7或8所述的装置,其中,所述获取模块包括:
第二确定子模块,确定所述目标图像所针对的当前性能指标;
第三确定子模块,基于所述当前性能指标,确定第一图像库中是否包括针对所述当前性能指标的历史图像,其中,所述历史图像包括所述应用服务器运行所述应用程序生成的历史性能指标数据;
第一获取子模块,响应于确定第一图像库中包括针对所述当前性能指标的历史图像,获取所述历史图像作为所述参考图像;以及
第二获取子模块,响应于确定第一图像库中不包括针对所述当前性能指标的历史图像,获取第二图像库中的新增图像作为所述参考图像,其中,所述新增图像是基于所述当前性能指标的预设指标阈值生成的。
10.根据权利要求9所述的装置,还包括:
确定模块,基于所述处理结果,确定所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常;以及
存储模块,响应于确定所述应用服务器在所述第一时间段内运行所述应用程序的过程正常,将所述目标图像存储至所述第一图像库,以便后续利用所述目标图像作为参考图像来确定所述应用服务器运行所述应用程序的过程是否正常。
11.根据权利要求8所述的装置,其中,所述第一特征值包括N个第一字符,所述第二特征值包括N个第二字符,所述N为大于1的整数;
其中,所述基于所述第一特征值和所述第二特征值,确定所述目标图像和所述参考图像之间的相似性包括:
将所述N个第一字符与所述N个第二字符一对一地进行比对,得到所述N个第一字符与所述N个第二字符之间不同字符的字符数量,所述字符数量表征了所述目标图像和所述参考图像之间的相似性。
12.根据权利要求7或11所述的装置,其中,所述对所述目标图像和所述参考图像进行图像比对处理包括:
确定所述目标图像中的M个目标子区域,其中,M为大于1的整数;
确定所述参考图像中的M个参考子区域;以及
将所述M个目标子区域和所述所述M个参考子区域一对一地进行图像比对,得到M个处理子结果,其中,所述M个处理子结果表征了所述应用服务器在所述第一时间段内运行所述应用程序的过程是否正常。
13.一种计算设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~6中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010464733.6A CN111611144B (zh) | 2020-05-27 | 2020-05-27 | 用于处理性能测试数据的方法、装置、计算设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010464733.6A CN111611144B (zh) | 2020-05-27 | 2020-05-27 | 用于处理性能测试数据的方法、装置、计算设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111611144A true CN111611144A (zh) | 2020-09-01 |
CN111611144B CN111611144B (zh) | 2023-09-19 |
Family
ID=72200017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010464733.6A Active CN111611144B (zh) | 2020-05-27 | 2020-05-27 | 用于处理性能测试数据的方法、装置、计算设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111611144B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948256A (zh) * | 2021-03-24 | 2021-06-11 | 北京大米科技有限公司 | 一种客户端程序的测试方法、装置、存储介质及电子设备 |
CN112954306A (zh) * | 2021-01-28 | 2021-06-11 | 北京安兔兔科技有限公司 | 一种图像处理性能测试方法及装置 |
CN113778768A (zh) * | 2021-08-24 | 2021-12-10 | 深圳市联影高端医疗装备创新研究院 | 重建服务器测试方法、装置、计算机设备和存储介质 |
CN114490375A (zh) * | 2022-01-24 | 2022-05-13 | 腾讯科技(深圳)有限公司 | 应用程序的性能测试方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150086115A1 (en) * | 2013-09-20 | 2015-03-26 | Oracle International Corporation | Screenshot database for application verification |
CN108733568A (zh) * | 2018-05-25 | 2018-11-02 | 平安科技(深圳)有限公司 | 应用测试方法、装置、设备及可读存储介质 |
CN109302522A (zh) * | 2018-09-11 | 2019-02-01 | 北京京东金融科技控股有限公司 | 测试方法、装置以及计算机系统和介质 |
CN109726103A (zh) * | 2018-05-14 | 2019-05-07 | 平安科技(深圳)有限公司 | 测试报告的生成方法、装置、设备及存储介质 |
CN109726100A (zh) * | 2018-04-19 | 2019-05-07 | 平安普惠企业管理有限公司 | 应用性能测试方法、装置、设备及计算机可读存储介质 |
CN109800153A (zh) * | 2018-12-14 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 移动应用测试方法与装置、电子设备、存储介质 |
CN110096429A (zh) * | 2019-03-18 | 2019-08-06 | 深圳壹账通智能科技有限公司 | 测试报告生成方法、装置、设备及存储介质 |
CN110287125A (zh) * | 2019-07-04 | 2019-09-27 | 中国工商银行股份有限公司 | 基于图像识别的软件例行化测试方法及装置 |
-
2020
- 2020-05-27 CN CN202010464733.6A patent/CN111611144B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150086115A1 (en) * | 2013-09-20 | 2015-03-26 | Oracle International Corporation | Screenshot database for application verification |
CN109726100A (zh) * | 2018-04-19 | 2019-05-07 | 平安普惠企业管理有限公司 | 应用性能测试方法、装置、设备及计算机可读存储介质 |
CN109726103A (zh) * | 2018-05-14 | 2019-05-07 | 平安科技(深圳)有限公司 | 测试报告的生成方法、装置、设备及存储介质 |
CN108733568A (zh) * | 2018-05-25 | 2018-11-02 | 平安科技(深圳)有限公司 | 应用测试方法、装置、设备及可读存储介质 |
CN109302522A (zh) * | 2018-09-11 | 2019-02-01 | 北京京东金融科技控股有限公司 | 测试方法、装置以及计算机系统和介质 |
CN109800153A (zh) * | 2018-12-14 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 移动应用测试方法与装置、电子设备、存储介质 |
CN110096429A (zh) * | 2019-03-18 | 2019-08-06 | 深圳壹账通智能科技有限公司 | 测试报告生成方法、装置、设备及存储介质 |
CN110287125A (zh) * | 2019-07-04 | 2019-09-27 | 中国工商银行股份有限公司 | 基于图像识别的软件例行化测试方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112954306A (zh) * | 2021-01-28 | 2021-06-11 | 北京安兔兔科技有限公司 | 一种图像处理性能测试方法及装置 |
CN112954306B (zh) * | 2021-01-28 | 2022-10-25 | 北京安兔兔科技有限公司 | 一种图像处理性能测试方法及装置 |
CN112948256A (zh) * | 2021-03-24 | 2021-06-11 | 北京大米科技有限公司 | 一种客户端程序的测试方法、装置、存储介质及电子设备 |
CN113778768A (zh) * | 2021-08-24 | 2021-12-10 | 深圳市联影高端医疗装备创新研究院 | 重建服务器测试方法、装置、计算机设备和存储介质 |
CN114490375A (zh) * | 2022-01-24 | 2022-05-13 | 腾讯科技(深圳)有限公司 | 应用程序的性能测试方法、装置、设备及存储介质 |
CN114490375B (zh) * | 2022-01-24 | 2024-03-15 | 腾讯科技(深圳)有限公司 | 应用程序的性能测试方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111611144B (zh) | 2023-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111611144B (zh) | 用于处理性能测试数据的方法、装置、计算设备和介质 | |
CN108520470B (zh) | 用于生成用户属性信息的方法和装置 | |
CN111898578B (zh) | 人群密度的获取方法、装置、电子设备 | |
US20190253760A1 (en) | Method and apparatus for recommending video | |
US10706454B2 (en) | Method, medium, and system for training and utilizing item-level importance sampling models | |
WO2020199662A1 (zh) | 用于推送信息的方法和装置 | |
US10223397B1 (en) | Social graph based co-location of network users | |
CN111340220B (zh) | 用于训练预测模型的方法和装置 | |
CN110619078B (zh) | 用于推送信息的方法和装置 | |
CN107392259B (zh) | 构建不均衡样本分类模型的方法和装置 | |
CN113743607A (zh) | 异常检测模型的训练方法、异常检测方法及装置 | |
CN112329762A (zh) | 图像处理方法、模型训练方法、装置、计算机设备和介质 | |
US10853130B1 (en) | Load balancing and conflict processing in workflow with task dependencies | |
WO2020199659A1 (zh) | 用于确定推送优先级信息的方法和装置 | |
KR102543838B1 (ko) | 정보 획득 방법 및 장치 | |
CN111367778B (zh) | 评估搜索策略的数据分析方法和装置 | |
CN114637809A (zh) | 同步延迟时间动态配置方法、装置、电子设备及介质 | |
US11521017B2 (en) | Confident peak-aware response time estimation by exploiting telemetry data from different system configurations | |
CN110888583B (zh) | 页面显示方法、系统、装置和电子设备 | |
US20220004759A1 (en) | Dataset driven custom learning for multi-scale object detection | |
CN114139059A (zh) | 资源推荐模型的训练方法、资源推荐方法及装置 | |
CN113034580A (zh) | 图像信息检测方法、装置和电子设备 | |
CN111949819A (zh) | 用于推送视频的方法和装置 | |
CN111984839A (zh) | 绘制用户画像的方法和装置 | |
CN116881027B (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 |