CN116048942A - 一种服务器测试方法、装置、设备及可读存储介质 - Google Patents
一种服务器测试方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN116048942A CN116048942A CN202310079965.3A CN202310079965A CN116048942A CN 116048942 A CN116048942 A CN 116048942A CN 202310079965 A CN202310079965 A CN 202310079965A CN 116048942 A CN116048942 A CN 116048942A
- Authority
- CN
- China
- Prior art keywords
- test
- test case
- case
- server
- preset
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 582
- 238000004590 computer program Methods 0.000 claims description 35
- 238000000034 method Methods 0.000 claims description 28
- 239000000758 substrate Substances 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013215 result calculation Methods 0.000 description 1
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/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/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- 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)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了计算机技术领域内的一种服务器测试方法、装置、设备及可读存储介质。本申请中的控制端在获取到运行指令后,可以调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;在到达任一测试用例的测试启动时间时,按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果,由此能够降低服务器测试流程对人工的依赖,提高服务器测试效率。本申请提供的一种服务器测试装置、设备及可读存储介质,也同样具有上述技术效果。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种服务器测试方法、装置、设备及可读存储介质。
背景技术
当前在测试服务器性能时,需要手动输入测试命令来执行每一测试项和相应测试用例,测试结果也需要人工查询并记录。可见当前测试方案对人工依赖性大,测试过程需要专人看管,测试效率较低。
因此,如何降低服务器测试对人工的依赖,提高服务器测试效率,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本申请的目的在于提供一种服务器测试方法、装置、设备及可读存储介质,以降低服务器测试对人工的依赖,提高服务器测试效率。其具体方案如下:
第一方面,本申请提供了一种服务器测试方法,应用于控制端,包括:
若获取到运行指令,则调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;
若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到所述测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;
若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
可选地,在所述被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至所述日志文件。
可选地,所述基于该测试用例的各次执行结果确定该测试用例的测试结果,包括:
从所述预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;
计算各次执行结果中的同一测试指标值的平均值;
将所述至少一个测试指标值的平均值记录为当前测试用例的测试结果。
可选地,所述测试指标值包括:带宽大小、时延大小和IOPS。
可选地,所述从所述预设目录中读取当前测试用例的各次执行结果,包括:
遍历所述预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
可选地,所述调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数,包括:
发送测试指令至被控端,以调用所述被控端中的测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
可选地,所述按照预设格式记录所有测试用例的测试结果,包括:
按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。
第二方面,本申请提供了一种服务器测试装置,应用于控制端,包括:
调用模块,用于若获取到运行指令,则调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;
测试模块,用于若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到所述测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;
记录模块,用于若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
可选地,还包括:
日志记录模块,用于在所述被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至所述日志文件。
可选地,所述测试模块具体用于:
从所述预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;
计算各次执行结果中的同一测试指标值的平均值;
将所述至少一个测试指标值的平均值记录为当前测试用例的测试结果。
可选地,所述测试指标值包括:带宽大小、时延大小和IOPS。
可选地,所述测试模块具体用于:
遍历所述预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
可选地,所述调用模块具体用于:
发送测试指令至被控端,以调用所述被控端中的测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
可选地,所述记录模块具体用于:
按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的服务器测试方法。
第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的服务器测试方法。
通过以上方案可知,本申请提供了一种服务器测试方法,应用于控制端,包括:若获取到运行指令,则调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到所述测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
可见,本申请提供的控制端在获取到运行指令后,可以调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;在到达任一测试用例的测试启动时间时,按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。由此仅需人工触发控制端的运行,后续测试流程以及测试结果记录便可以借助控制端完成,而无需人工参与,故该方案能够降低服务器测试流程对人工的依赖,提高服务器测试效率。
相应地,本申请提供的一种服务器测试装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种服务器测试方法流程图;
图2为本申请公开的一种测试结果示意图;
图3为本申请公开的一种测试需求更改的代码示意图;
图4为本申请公开的另一种服务器测试方法流程图;
图5为本申请公开的一种测试结果计算的代码示意图;
图6为本申请公开的一种服务器测试装置示意图;
图7为本申请公开的一种电子设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,在测试服务器性能时,需要手动输入测试命令来执行每一测试项和相应测试用例,测试结果也需要人工查询并记录。可见当前测试方案对人工依赖性大,测试过程需要专人看管,测试效率较低。为此,本申请提供了一种服务器测试方案,能够降低服务器测试对人工的依赖,提高服务器测试效率。
参见图1所示,本申请实施例公开了一种服务器测试方法,应用于控制端,包括:
S101、若获取到运行指令,则调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
在本实施例中,控制端可以为程序脚本,该控制端可以安装于任意计算机设备,该计算机设备具体可以包括但不限于智能手机、平板电脑、笔记本电脑、台式电脑、服务器等。测试工具可以与控制端安装于同一计算机设备,也可以安装于其他计算机设备。作为控制端的程序脚本可采用任意编程语言实现。
如步骤S101所述,控制端中预置有各个测试用例、每个测试用例的测试启动时间和测试次数。其中,每个测试用例设定有:IO操作类型、每次IO大小、每次下发给被测服务器的IO个数、被测服务器中的线程并发数等。其中,IO操作类型如:随机读、随机写、顺序读、顺序写等。被测服务器执行相应测试用例即:被测服务器按照该测试用例的设定进行IO处理,在被测服务器执行相应测试用例的过程中,检测被测服务器的带宽大小、时延大小和IOPS等指标,基于这些指标可以判断被测服务器的性能。
S102、若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果。
在一种具体实施方式中,在被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至日志文件。其中,日志文件中可以记录:执行起始时间、IO操作类型、IO大小、用于处理各IO的线程ID、各线程的执行时间、带宽大小、时延大小、IOPS、执行结束时间等。具体记录哪些信息,可在控制端进行灵活配置。
在一种具体实施方式中,基于该测试用例的各次执行结果确定该测试用例的测试结果,包括:从预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;计算各次执行结果中的同一测试指标值的平均值;将至少一个测试指标值的平均值记录为当前测试用例的测试结果。在一种具体实施方式中,测试指标值包括:带宽大小、时延大小和IOPS。在一种具体实施方式中,从预设目录中读取当前测试用例的各次执行结果,包括:遍历预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
在一种示例中,一个测试用例的测试次数为5次,那么针对该测试用例可获得5个执行结果,假设每个执行结果中包括:带宽大小、时延大小和IOPS这三个指标值,那么该测试用例的测试结果中就包括这三个指标值的平均值。
S103、若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
在一种具体实施方式中,按照预设格式记录所有测试用例的测试结果,包括:按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。如图2所示,图2记录有8个测试用例的测试结果,测试用例1针对读操作类型(read)测试带宽大小这一指标,得到的带宽测试值为1634.12;测试用例2针对写操作类型(write)测试带宽大小这一指标,得到的带宽测试值为438.06;测试用例3针对随机读操作(randread)测试IOPS这一指标,得到的IOPS测试值为23213.36;测试用例4针对随机写操作(randwrite)测试IOPS这一指标,得到的IOPS测试值为6266.93;测试用例5针对读操作类型(read)测试IOPS这一指标,得到的IOPS测试值为27074.99;测试用例6针对写操作类型(write)测试IOPS这一指标,得到的IOPS测试值为3043.02;测试用例7针对随机读操作(randread)测试延时这一指标,得到的延时测试值为0.06;测试用例8针对随机写操作(randwrite)测试延时这一指标,得到的延时测试值为0.17。
本实施例还适用于多端测试场景,设置主控设备和多个被控设备,主控设备上安装测试工具和控制端,而每个被控设备上安装一个被控端和一个测试工具,那么主控设备上的控制端可通过被控设备上的被控端调用被控设备上的测试工具进行服务器测试。由此可实现:一个主控设备和多个被控设备同时给同一被测服务器下发测试IO,使得同一服务器被多端测试,各个设备可获得相应的测试结果,测试完成后,由主控设备收集所有测试结果。被控端可以是一个程序脚本。在一种具体实施方式中,调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数,包括:发送测试指令至被控端,以调用被控端中的测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。测试IO一般模拟被测服务器上需运行的实际业务生成。
当然,本实施例还适用于单端测试场景,即:设置一个主控设备,该主控设备上安装有控制端和测试工具,由该主控设备给被测服务器下发测试IO。
可见,本实施例提供的控制端在获取到运行指令后,可以调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;在到达任一测试用例的测试启动时间时,按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。由此仅需人工触发控制端的运行,后续测试流程以及测试结果记录便可以借助控制端完成,而无需人工参与,故该方案能够降低服务器测试流程对人工的依赖,提高服务器测试效率。
下述实施例以单端测试场景和fio这一测试工具为例进行方案介绍。将用作控制端的python脚本安装于某一服务器,同时该服务器上安装fio这一测试工具,该服务器用于给被测设备下发IO。该服务器具体可以包括:至少一个处理器、至少一个存储器、电源、通信接口、输入输出接口和通信总线。电源用于为服务器上的各硬件设备提供工作电压;通信接口能够为服务器创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。存储器作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。操作系统用于管理与控制服务器上的各硬件设备以及计算机程序,以实现处理器对存储器中数据的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。
具体的,用作控制端的python脚本中设有多个测试项、每个测试项的执行次数以及执行时间等测试需求,一个测试项即一个测试用例。并且,该脚本可以收集测试结果,生成json格式的日志记录。其中,脚本中的测试需求可以灵活进行添加或修改,如图3所示,对python脚本中的相应代码行进行修改,可实现测试需求的更改。每个测试用例设定有:IO操作类型、每次IO大小、每次下发给被测服务器的IO个数、被测服务器中的线程并发数等。其中,IO操作类型如:随机读、随机写、顺序读、顺序写等。被测服务器执行相应测试用例即:被测服务器按照该测试用例的设定进行IO处理,在被测服务器执行相应测试用例的过程中,检测被测服务器的带宽大小、时延大小和IOPS等指标,基于这些指标可以判断被测服务器的性能。
请参见图4,脚本实现有如下功能:按照测试需求使fio工具自动进行服务器测试,并保存测试日志;遍历测试日志,获得测试性能值;计算每个测试性能值的均值,保存到表格文件中。其中,测试日志中可以记录:执行起始时间、IO操作类型、IO大小、用于处理各IO的线程ID、各线程的执行时间、带宽大小、时延大小、IOPS、执行结束时间等。具体记录哪些信息,可在python脚本中进行灵活配置。
其中,针对一个测试项,按照其执行次数循环下发fio命令,每次的结果以json格式保存到指定目录下,之后可使用python脚本对json日志进行解析统计,获取iops、带宽、时延等性能值;计算每个测试项多次执行结果的性能指标的平均值,并将平均值保存到表格里。测试执行完成后,可以直接查看保存在execl表格里所有测试用例的结果。其中,计算均值的代码实现过程如图5所示。
可见,本实施例可使fio工具自动对服务器性能进行测试,并自动进行性能结果统计,减少了手动操作的参与,因此可以充分利用夜间时间或被测设备的空闲时段进行性能测试,能有效提升整体测试效率和测试进度。
对于多端测试场景,设置一个主控设备和多个被控设备。主控设备上的控制端可通过被控设备上的被控端调用被控设备上的测试工具进行服务器测试。由此可实现:一个主控设备和多个被控设备同时给同一被测服务器下发测试IO,使得同一服务器被多端测试,各个设备可获得相应的测试结果,测试完成后,由主控设备收集所有测试结果。测试IO一般模拟被测服务器上需运行的实际业务生成。
下面对本申请实施例提供的一种服务器测试装置进行介绍,下文描述的一种服务器测试装置与上文描述的一种服务器测试方法可以相互参照。
参见图6所示,本申请实施例公开了一种服务器测试装置,应用于控制端,包括:
调用模块601,用于若获取到运行指令,则调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;
测试模块602,用于若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;
记录模块603,用于若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
在一种具体实施方式中,还包括:
日志记录模块,用于在被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至日志文件。
在一种具体实施方式中,测试模块具体用于:
从预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;
计算各次执行结果中的同一测试指标值的平均值;
将至少一个测试指标值的平均值记录为当前测试用例的测试结果。
在一种具体实施方式中,测试指标值包括:带宽大小、时延大小和IOPS。
在一种具体实施方式中,测试模块具体用于:
遍历预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
在一种具体实施方式中,调用模块具体用于:
发送测试指令至被控端,以调用被控端中的测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
在一种具体实施方式中,记录模块具体用于:
按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种服务器测试装置,该装置提供的控制端在获取到运行指令后,可以调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;在到达任一测试用例的测试启动时间时,按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。由此仅需人工触发控制端的运行,后续测试流程以及测试结果记录便可以借助控制端完成,而无需人工参与,故该方案能够降低服务器测试流程对人工的依赖,提高服务器测试效率。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的一种电子设备与上文描述的一种服务器测试方法及装置可以相互参照。
参见图7所示,本申请实施例公开了一种电子设备,包括:
存储器701,用于保存计算机程序;
处理器702,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:若获取到运行指令,则调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果。若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:在被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至日志文件。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:从预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;计算各次执行结果中的同一测试指标值的平均值;将至少一个测试指标值的平均值记录为当前测试用例的测试结果。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:遍历预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:发送测试指令至被控端,以调用被控端中的测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
在本实施例中,所述处理器执行所述存储器中保存的计算机程序时,可以具体实现以下步骤:按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。
进一步的,本申请实施例还提供了一种服务器来作为上述电子设备。该服务器,具体可以包括:至少一个处理器、至少一个存储器、电源、通信接口、输入输出接口和通信总线。其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行,以实现前述任一实施例公开的服务器测试方法中的相关步骤。
本实施例中,电源用于为服务器上的各硬件设备提供工作电压;通信接口能够为服务器创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。
其中,操作系统用于管理与控制服务器上的各硬件设备以及计算机程序,以实现处理器对存储器中数据的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序除了包括能够用于完成前述任一实施例公开的服务器测试方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据除了可以包括虚拟机等数据外,还可以包括虚拟机的开发商信息等数据。
进一步的,本申请实施例还提供了一种终端来作为上述电子设备。该终端具体可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
通常,本实施例中的终端包括有:处理器和存储器。
其中,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器还可以包括AI(ArtificialIntelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器至少用于存储以下计算机程序,其中,该计算机程序被处理器加载并执行之后,能够实现前述任一实施例公开的由终端侧执行的服务器测试方法中的相关步骤。另外,存储器所存储的资源还可以包括操作系统和数据等,存储方式可以是短暂存储或者永久存储。其中,操作系统可以包括Windows、Unix、Linux等。数据可以包括但不限于应用程序的更新信息。
在一些实施例中,终端还可包括有显示屏、输入输出接口、通信接口、传感器、电源以及通信总线。
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种服务器测试方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的服务器测试方法。
在本实施例中,所述处理器执行的计算机程序,可以具体实现以下步骤:若获取到运行指令,则调用测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果。若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
在本实施例中,所述处理器执行的计算机程序,可以具体实现以下步骤:在被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至日志文件。
在本实施例中,所述处理器执行的计算机程序,可以具体实现以下步骤:从预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;计算各次执行结果中的同一测试指标值的平均值;将至少一个测试指标值的平均值记录为当前测试用例的测试结果。
在本实施例中,所述处理器执行的计算机程序,可以具体实现以下步骤:遍历预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
在本实施例中,所述处理器执行的计算机程序,可以具体实现以下步骤:发送测试指令至被控端,以调用被控端中的测试工具读取控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
在本实施例中,所述处理器执行的计算机程序,可以具体实现以下步骤:按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。
本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种服务器测试方法,其特征在于,应用于控制端,包括:
若获取到运行指令,则调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;
若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到所述测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;
若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
2.根据权利要求1所述的方法,其特征在于,
在所述被测服务器中执行任一测试用例时,在预设目录中创建当前测试用例的该次执行对应的日志文件,并将当前测试用例的该次执行日志记录至所述日志文件。
3.根据权利要求2所述的方法,其特征在于,所述基于该测试用例的各次执行结果确定该测试用例的测试结果,包括:
从所述预设目录中读取当前测试用例的各次执行结果;每一执行结果中包括至少一个测试指标值;
计算各次执行结果中的同一测试指标值的平均值;
将所述至少一个测试指标值的平均值记录为当前测试用例的测试结果。
4.根据权利要求3所述的方法,其特征在于,所述测试指标值包括:带宽大小、时延大小和IOPS。
5.根据权利要求3所述的方法,其特征在于,所述从所述预设目录中读取当前测试用例的各次执行结果,包括:
遍历所述预设目录中的各个日志文件,获得当前测试用例的各次执行结果。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数,包括:
发送测试指令至被控端,以调用所述被控端中的测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数。
7.根据权利要求1-5任意一项所述的方法,其特征在于,所述按照预设格式记录所有测试用例的测试结果,包括:
按照各测试用例的测试启动时间顺序将各测试用例的测试结果记录为表格。
8.一种服务器测试装置,其特征在于,应用于控制端,包括:
调用模块,用于若获取到运行指令,则调用测试工具读取所述控制端中预置的各个测试用例、每个测试用例的测试启动时间和测试次数;
测试模块,用于若到达任一测试用例的测试启动时间,则按照该测试用例的测试次数在被测服务器中循环执行该测试用例,在该测试用例的循环执行次数达到所述测试次数时,基于该测试用例的各次执行结果确定该测试用例的测试结果;
记录模块,用于若所有测试用例均执行完成,则按照预设格式记录所有测试用例的测试结果。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的方法。
10.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310079965.3A CN116048942A (zh) | 2023-01-30 | 2023-01-30 | 一种服务器测试方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310079965.3A CN116048942A (zh) | 2023-01-30 | 2023-01-30 | 一种服务器测试方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116048942A true CN116048942A (zh) | 2023-05-02 |
Family
ID=86127186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310079965.3A Pending CN116048942A (zh) | 2023-01-30 | 2023-01-30 | 一种服务器测试方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116048942A (zh) |
-
2023
- 2023-01-30 CN CN202310079965.3A patent/CN116048942A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107506300B (zh) | 一种用户界面测试方法、装置、服务器和存储介质 | |
US10643736B2 (en) | Method, apparatus and electronic device for read/write speed testing | |
WO2017049893A1 (zh) | 一种应用程序的测试方法、测试装置及移动终端 | |
CN115129572B (zh) | 一种性能测试方法、装置、设备及介质 | |
CN115878394A (zh) | 内存测试方法、装置、电子设备及存储介质 | |
CN112996020A (zh) | 一种基于蓝牙的自动化测试方法、装置及蓝牙测试终端 | |
CN115407943A (zh) | 一种内存转储文件生成方法、装置、设备及可读存储介质 | |
CN113608684B (zh) | 内存信息获取方法、装置、系统、电子设备及存储介质 | |
CN111143092B (zh) | 故障录波数据处理方法、系统及终端设备 | |
US10198784B2 (en) | Capturing commands in a multi-engine graphics processing unit | |
CN111078384A (zh) | 核心数据迁移的方法、装置、计算机设备及存储介质 | |
CN116048942A (zh) | 一种服务器测试方法、装置、设备及可读存储介质 | |
CN112463574A (zh) | 软件测试方法、装置、系统、设备和存储介质 | |
CN115858114A (zh) | 空闲任务的调度方法、装置、电子设备及可读存储介质 | |
CN115576484A (zh) | 数据读写方法、装置、电子设备及存储介质 | |
US10073762B2 (en) | Debug device, debug method, and debug program | |
CN113064833A (zh) | 一种单片机仿真方法、系统、装置、设备及存储介质 | |
CN112506592A (zh) | 页面加载时长的确定方法、装置、设备和存储介质 | |
CN108874560B (zh) | 进行通信的方法和通信设备 | |
CN113051105A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN113760672A (zh) | 多云平台资源的性能测试方法、设备及存储介质 | |
CN109726053B (zh) | 数据库控制中心的切换方法、装置及计算机设备 | |
CN112466384B (zh) | 一种闪存编程挂起特性的测试方法、测试装置及测试设备 | |
CN114116291B (zh) | 日志检测方法、日志检测装置、计算机设备及存储介质 | |
CN116149565A (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 |