压力测试方法、装置及计算机程序产品制造方法及图纸

技术编号:34773167 阅读:16 留言:0更新日期:2022-08-31 19:39
本公开提供了压力测试方法、装置、电子设备、存储介质及计算机程序产品,涉及计算机技术领域,具体涉及云服务技术,可用于压力测试场景下。具体实现方案为:获取对于预设服务的压力测试请求,其中,压力测试请求中包括对于预设服务的测试场景信息;响应于确定预设服务由具有服务请求录制能力的程序语言实现,确定与测试场景信息对应的目标时段内的多个目标服务请求;根据多个目标服务请求,生成测试请求集合;通过测试请求集合,对预设服务进行压力测试。本公开提高了对预设服务的压力测试的效率和准确度。效率和准确度。效率和准确度。

【技术实现步骤摘要】
压力测试方法、装置及计算机程序产品


[0001]本公开涉及计算机
,具体涉及云服务技术,尤其涉及压力测试方法、装置、电子设备、存储介质以及计算机程序产品,可用于压力测试场景下。

技术介绍

[0002]在线上服务的日常运维和测试过程中,为了探寻线上服务的冗余情况,需要对线上服务集群进行频繁的容量压力测试。例如,各大节假日前,通过线上容量压力测试的方式决定线上服务的扩容实例数;平时工作日,通过线上容量压力测试的方式决定白天与夜间的部署实例数,以节省机器冗余算力。目前,运维人员与业务测试人员之间一般进行次沟通,以通过人工生成方式生成包括多个测试请求的测试请求集合,进行线上服务的压力测试。

技术实现思路

[0003]本公开提供了一种压力测试方法、装置、电子设备、存储介质以及计算机程序产品。
[0004]根据第一方面,提供了一种压力测试方法,包括:获取对于预设服务的压力测试请求,其中,压力测试请求中包括对于预设服务的测试场景信息;响应于确定预设服务由具有服务请求录制能力的程序语言实现,确定与测试场景信息对应的目标时段内的多个目标服务请求;根据多个目标服务请求,生成测试请求集合;通过测试请求集合,对预设服务进行压力测试。
[0005]根据第二方面,提供了一种压力测试装置,包括:获取单元,被配置成获取对于预设服务的压力测试请求,其中,压力测试请求中包括对于预设服务的测试场景信息;确定单元,被配置成响应于确定预设服务由具有服务请求录制能力的程序语言实现,确定与测试场景信息对应的目标时段内的多个目标服务请求;生成单元,被配置成根据多个目标服务请求,生成测试请求集合;测试单元,被配置成通过测试请求集合,对预设服务进行压力测试。
[0006]根据第三方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面任一实现方式描述的方法。
[0007]根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行如第一方面任一实现方式描述的方法。
[0008]根据第五方面,提供了一种计算机程序产品,包括:计算机程序,计算机程序在被处理器执行时实现如第一方面任一实现方式描述的方法。
[0009]根据本公开的技术,提供了一种压力测试方法,基于对预设服务测试而指定的测试场景信息对应的目标时段内的目标服务请求,自动生成测试请求集合,以对预设服务进行压力测试,提高了对预设服务的压力测试的效率;并且,基于真实的服务请求生成测试请
求集合,提高了压力测试的准确度。
[0010]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0011]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0012]图1是根据本公开的一个实施例可以应用于其中的示例性系统架构图;
[0013]图2是根据本公开的压力测试方法的一个实施例的流程图;
[0014]图3是根据本实施例的压力测试方法的应用场景的示意图;
[0015]图4是根据本公开的测试请求集合的生成方式的示意图;
[0016]图5是根据本公开的压力测试方法的又一个实施例的流程图;
[0017]图6是根据本公开的对于导航服务的压力测试的测试系统的结构示意图。
[0018]图7是根据本公开的压力测试装置的一个实施例的结构图;
[0019]图8是适于用来实现本公开实施例的计算机系统的结构示意图。
具体实施方式
[0020]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0021]本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
[0022]图1示出了可以应用本公开的压力测试方法及装置的示例性架构100。
[0023]如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。终端设备101、102、103之间通信连接构成拓扑网络,网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0024]终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103可以是支持网络连接从而进行数据交互和数据处理的硬件设备或软件。当终端设备101、102、103为硬件时,其可以是支持网络连接,信息获取、交互、显示、处理等功能的各种电子设备,包括但不限于车载电脑、智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
[0025]服务器105可以是提供各种服务的服务器,例如根据终端设备101、102、103发出的对于预设服务的压力测试请求,自动生成测试请求集合以对预设服务进行压力测试的后台处理服务器。作为示例,服务器105可以是云端服务器。
[0026]需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可
以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
[0027]还需要说明的是,本申请的实施例所提供的压力测试方法可以由服务器执行,也可以由终端设备执行,还可以由服务器和终端设备彼此配合执行。相应地,压力测试装置包括的各个部分(例如各个单元)可以全部设置于服务器中,也可以全部设置于终端设备中,还可以分别设置于服务器和终端设备中。
[0028]应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。当压力测试方法运行于其上的电子设备不需要与其他电子设备进行数据传输时,该系统架构可以仅包括压力测试方法运行于其上的电子设备(例如服务器或终端设备)。
[0029]请参考图2,图2为本公开实施例提供的一种压力测试方法的流程图,其中,流程200包括以下步骤:
[0030]步骤201,获取对于预设服务的压力测试请本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种压力测试方法,包括:获取对于预设服务的压力测试请求,其中,所述压力测试请求中包括对于所述预设服务的测试场景信息;响应于确定所述预设服务由具有服务请求录制能力的程序语言实现,确定与所述测试场景信息对应的目标时段内的多个目标服务请求;根据所述多个目标服务请求,生成测试请求集合;通过所述测试请求集合,对所述预设服务进行压力测试。2.根据权利要求1所述的方法,其中,所述根据所述多个目标服务请求,生成测试请求集合,包括:根据所述多个目标服务请求,生成初始测试请求集合;根据所述测试场景信息对应的历史服务请求在预设指标下的比例信息,确定目标比例信息;根据所述目标比例信息调整所述初始测试请求集合,得到所述测试请求集合。3.根据权利要求2所述的方法,其中,所述根据所述测试场景信息对应的历史服务请求在预设指标下的比例信息,确定目标比例信息,包括:根据所述测试场景信息对应的历史服务请求在预设指标下的比例信息,确定初始比例信息;根据接收到的比例调整操作,调整所述初始比例信息,得到所述目标比例信息。4.根据权利要求2或3所述的方法,其中,所述通过所述测试请求集合,对所述预设服务进行压力测试,包括:基于所述目标比例信息对所述测试请求集合进行校验;响应于确定所述测试请求集合通过校验,通过所述测试请求集合,对所述预设服务进行压力测试。5.根据权利要求4所述的方法,其中,所述基于所述目标比例信息对所述测试请求集合进行校验,包括:确定所述测试请求集合中的每个测试请求的预设指标;确定所述测试请求集合中的测试请求在预设指标下的第一实际比例信息;基于所述目标比例信息和所述第一实际比例信息,对所述测试请求集合进行校验。6.根据权利要求4所述的方法,其中,所述基于所述目标比例信息对所述测试请求集合进行校验,包括:将所述测试请求集合中的部分测试请求输入与所述预设服务匹配的线下压力测试平台,得到实际压力测试数据;根据所述实际压力测试数据,确定所述测试请求集合中的测试请求在预设指标下的第二实际比例信息;基于所述目标比例信息和所述第二实际比例信息,对所述测试请求集合进行校验。7.根据权利要求1所述的方法,其中,还包括:响应于确定所述预设服务由基于服务日志记录服务请求的程序语言实现,确定与所述测试场景信息对应的目标时段内的服务日志;基于所确定的服务日志,生成所述测试请求集合。
8.一种压力测试装置,包括:获取单元,被配置成获取对于预设服务的压力测试请求,其中,所述压力测试请求中包括对于所述预设服务的测试场景信息;确定单元,被配置成响应于确定所述预设服务由具有服务请求录制能力的程序语言实现,确定与所述测试场景信息对应的目标时段内的多个目标服务请求;生成单元...

【专利技术属性】
技术研发人员:孙宇博曲中鑫金鑫
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1