本申请涉及一种压力测试方法、装置、电子设备及存储介质,属于计算机技术领域。该压力测试方法包括:获取压力测试时的配置项,所述配置项包括压力测试项;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,得到测试结果,其中,所述测试工具为基于操作系统底层接口的测试工具。本申请实施例提供的压力测试方法,在进行压力测试时,采用基于操作系统底层接口的测试工具对测试对象进行压力测试,该测试工具是直接调用相关的内核命令,可绕过多层封装,打破不同厂商工具的限制,减小额外开销;同时可产生更大的压力,缩短测试所需的时间,提高测试效率。提高测试效率。提高测试效率。
【技术实现步骤摘要】
一种压力测试方法、装置、电子设备及存储介质
[0001]本申请属于计算机
,具体涉及一种压力测试方法、装置、电子设备及存储介质。
技术介绍
[0002]服务器在网络中具有非常重要的地位,因此对服务器的整体要求也越来越高,而服务器部件压力测试对于验证机器的稳定性和可靠性起到了至关重要的作用。顾名思义部件压力测试是指对服务器的部件如内存(memory)、硬盘等进行压力测试。
[0003]现有的内存、硬盘自动化压力测试工具,大多在应用层上开发,通过封装多层的应用程序接口(Application Programming Interface,API)与内核(kernel)进行交互,从而达到测试目的。在对API接口进行多层封装时,会存在许多复杂的协议栈以及产生不必要的资源开销,从而导致产生的压力慢且小,使得测试成本高,且效率低下。
技术实现思路
[0004]鉴于此,本申请的目的在于提供一种压力测试方法、装置、电子设备及存储介质,以改善现有测试方法所存在的测试成本高,且效率低下的问题。
[0005]本申请的实施例是这样实现的:
[0006]第一方面,本申请实施例提供了一种压力测试方法,包括:获取压力测试时的配置项,所述配置项包括压力测试项;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,得到测试结果,其中,所述测试工具为基于操作系统底层接口的测试工具。本申请实施例中,在进行压力测试时,采用基于操作系统底层接口的测试工具对测试对象进行压力测试,该测试工具是直接调用相关的内核命令,可绕过多层封装,打破不同厂商工具的限制,减小额外开销;同时可产生更大的压力,缩短测试所需的时间,提高测试效率。
[0007]结合第一方面实施例的一种可能的实施方式,所述压力测试项对应的测试对象为整机,所述配置项还包括内存使用率;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:使用内存测试工具按照所述内存使用率对应的压力对内存进行压力测试,使得测试时内存的使用率达到所述内存使用率;调用底层接口函数向硬盘发送读写命令,使用IO测试工具对所述硬盘进行读写压力测试。本申请实施例中,通过同时使用内存测试工具对内存进行压力测试,以及使用IO测试工具对硬盘进行读写压力测试,使得该方法能实现对整机的测试,覆盖多种测试模式。
[0008]结合第一方面实施例的一种可能的实施方式,所述压力测试项对应的测试对象为内存,所述配置项还包括内存使用率;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:使用内存测试工具按照所述内存使用率对应的压力对所述内存进行压力测试,使得测试时内存的使用率达到所述内存使用率。本申请实施例中,在对内存进行压力测试时,还需要设置内存在压力测试过程中的内存使用率,测试
时,利用使用内存测试工具按照内存使用率对应的压力对内存进行压力测试,使得测试时内存的使用率达到内存使用率,使得可以根据不同的测试需要对内存进行有针对性的测试。
[0009]结合第一方面实施例的一种可能的实施方式,所述压力测试项对应的测试对象为硬盘;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:调用底层接口函数向硬盘发送读写命令,使用IO测试工具对所述硬盘进行读写压力测试。本申请实施例中,通过直接调用底层接口函数向硬盘发送读写命令,可以打破不同厂商工具的限制,减小额外开销,加快测试流程。
[0010]结合第一方面实施例的一种可能的实施方式,所述压力测试项对应的测试对象为内存或整机;所述方法还包括:使用内存监控工具监控压力测试时内存中每个内核的相关信息,所述相关信息包括:内存带宽使用情况、缓存未命中情况、最后一级缓存使用情况、每一时钟周期内所执行的指令情况中的至少一种。本申请实施例中,在测试过程中,还使用内存监控工具监控压力测试时内存中每个内核的相关信息,以便于基于该相关信息获知测试过程,分析测试效率。
[0011]结合第一方面实施例的一种可能的实施方式,使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试之前,所述方法还包括:自动清除当前系统日志,获取被测机器的硬件信息,并保存硬件信息日志。本申请实施例中,在压力测试之前,自动清除当前系统日志,避免新旧日志混淆,保证本次压力测试完成后,出现的Error(错误)是本次压力测试生成的;同时,通过获取被测机器的硬件信息以便于可以直观地了解被测机器的情况。
[0012]结合第一方面实施例的一种可能的实施方式,使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:判断所述压力测试项对应的测试对象是否为首次测试;若所述压力测试项对应的测试对象为非首次测试时,使用已安装的所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试;若所述压力测试项对应的测试对象为首次测试时,自动安装所述压力测试项对应的测试工具,并使用已安装的所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试。
[0013]第二方面,本申请实施例还提供了一种压力测试装置,包括:获取模块以及测试模块;获取模块,用于获取压力测试时的配置项,所述配置项包括压力测试项;测试模块,用于使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,得到测试结果,其中,所述测试工具为基于操作系统底层接口的测试工具。
[0014]第三方面,本申请实施例还提供了一种电子设备,包括:存储器和处理器,所述处理器与所述存储器连接;所述存储器,用于存储程序;所述处理器,用于调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
[0015]第四方面,本申请实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
[0016]本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得
显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
[0017]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
[0018]图1示出了本申请实施例提供的一种压力测试方法的流程示意图。
[0019]图2示出了本申请实施例提供的一种参数配置界面示意图。
[0020]图3示本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种压力测试方法,其特征在于,包括:获取压力测试时的配置项,所述配置项包括压力测试项;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,得到测试结果,其中,所述测试工具为基于操作系统底层接口的测试工具。2.根据权利要求1所述的方法,其特征在于,所述压力测试项对应的测试对象为整机,所述配置项还包括内存使用率;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:使用内存测试工具按照所述内存使用率对应的压力对内存进行压力测试,使得测试时内存的使用率达到所述内存使用率;调用底层接口函数向硬盘发送读写命令,使用IO测试工具对所述硬盘进行读写压力测试。3.根据权利要求1所述的方法,其特征在于,所述压力测试项对应的测试对象为内存,所述配置项还包括内存使用率;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:使用内存测试工具按照所述内存使用率对应的压力对所述内存进行压力测试,使得测试时内存的使用率达到所述内存使用率。4.根据权利要求1所述的方法,其特征在于,所述压力测试项对应的测试对象为硬盘;使用所述压力测试项对应的测试工具对所述压力测试项对应的测试对象进行压力测试,包括:调用底层接口函数向硬盘发送读写命令,使用IO测试工具对所述硬盘进行读写压力测试。5.根据权利要求1所述的方法,其特征在于,所述压力测试项对应的测试对象为内存或整机;所述方法还包括:使用内存监控工具监控压力测试时内存中每个内核的相关信息,所述相关信息包括:内存带宽使用情况、缓存未命中情况、最后一级缓存使用情况、每...
【专利技术属性】
技术研发人员:吴薇,秦晓宁,许飞,
申请(专利权)人:宁畅信息产业北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。