一种性能测试方法和装置制造方法及图纸

技术编号:17011471 阅读:28 留言:0更新日期:2018-01-11 08:10
本发明专利技术实施例提供了一种性能测试方法和装置,其中,该方法包括:监测事件队列中是否出现新的事件,其中,所述事件队列用于传递起压服务器集群变化、或者性能测试任务状态变化的事件;在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试。本发明专利技术解决了现有的性能测试方式中所存在的除了需要测试方法和测试数据外,还需要自行配置起压服务器的技术问题,达到了有效利用起压服务器的资源,以高效完成多个性能测试任务的技术效果。

【技术实现步骤摘要】
一种性能测试方法和装置
本专利技术涉及自动化测试
,尤其涉及一种性能测试方法和装置。
技术介绍
所谓的性能测试就是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件,从而对系统的各项性能指标进行测试。目前,常用的性能测试工具(例如:tsung、loadRunner等)主要是为了解决如何实现产生请求,以生成测试报告的问题。然而,现有的性能测试工具和测试方法主要存在如下问题:1)对产生的测试报告没有进行持久化,从而使得用户需要自行完成多次性能测试之间的报告整理工作,无法对性能测试报告进行有效的管理,也无法对多次性能测试进行跟踪;2)配置性能测试时,如何测试配置中的起压服务器需要用户人工指定,不支持分布式,如果要支持分布式,那么在增加机器或者减少机器时需要用户手动修改配置,操作起来十分繁琐;3)无法同时对多个性能测试任务进行任务调度,容易造成起压服务器的资源浪费。针对上述问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供一种性能测试方法和装置,以便可以有效利用起压服务器的资源,以完成多个性能测试任务。一方面,本专利技术实施例提供了一种性能测试方法,包括:监测事件队列中是否出现新的事件,其中,所述事件队列用于传递起压服务器集群变化、或者性能测试任务状态变化的事件;在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试。可选地,在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试,包括:从任务队列中获取优先级最高的一个性能测试任务;判断起压服务器集群是否能够满足所述优先级最高的性能测试任务的需求;如果满足,则将所述优先级最高的性能测试任务分配给所述起压服务器集群进行性能测试;否则,返回监测事件队列中是否出现新的事件。可选地,判断当前空闲的起压服务器集群是否能够满足所述优先级最高的性能测试任务的需求,包括:从性能测试任务表中获取所述优先级最高的性能测试任务的资源需求;将所述资源需求代入预先建立的协议消耗模型,确定出所述优先级最高的性能测试任务所需的服务器资源量;从起压服务器集群表中获取起压服务器集群中各个起压服务器所能提供的空闲资源量;判断所述各个起压服务器所能提供的空闲资源量之和,是否大于等于所述优先级最高的性能测试任务所需的服务器资源量;若是,则判定起压服务器集群能够满足所述优先级最高的性能测试任务的需求,否则,判定起压服务器集群不能够满足所述优先级最高的性能测试任务的需求。可选地,配给起压服务器集群进行性能测试,包括:生成配置文件,其中,所述配置文件中携带有所述起压服务器集群中各个起压服务器所需承担的任务;将所述配置文件传送至所述起压服务器集群;所述起压服务器集群中的各个起压服务器根据所述配置文件中记录的各个起压服务器所需承担的性能测试任务,进行性能测试。可选地,所述事件队列中的事件包括以下至少之一:起压服务器集群扩容、起压服务器集群缩容、新增性能测试任务、性能测试任务执行完成。可选地,起压服务器上的性能测试任务执行完成之后,所述方法还包括:在文件存储系统中存储性能测试结束后产生的测试结果文件。可选地,上述方法还包括:接收起压服务器集群中各个起压服务器定时发送的心跳信息;对于在预定时间阈值内未接收到心跳信息的起压服务器,将该起压服务器的注册信息设置为失效,否则,该起压服务器的注册信息为有效;其中,注册信息为失效的起压服务器不会被分配性能测试任务;将性能测试任务分配给起压服务器集群之后,将该起压服务器集群中分配了性能测试任务的起压服务器的状态信息设置为执行,分配了性能测试任务的起压服务器上的性能测试任务执行完成之后,将所述分配了性能测试任务的起压服务器的状态信息设置为空闲。另一方面,本专利技术实施例提供了一种性能测试装置,包括:监测模块,用于监测事件队列中是否出现新的事件,其中,所述事件队列用于传递起压服务器集群变化、或者性能测试任务状态变化的事件;测试模块,用于在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试。可选地,所述测试模块包括:获取单元,用于从任务队列中获取优先级最高的一个性能测试任务;判断单元,用于判断起压服务器集群是否能够满足所述优先级最高的性能测试任务的需求;执行单元,用于在判定能够满足所述优先级最高的性能测试任务的需求的情况下,将所述优先级最高的性能测试任务分配给所述起压服务器集群进行性能测试;在确定不能够满足所述优先级最高的性能测试任务的需求的情况下,返回监测事件队列中是否出现新的事件。可选地,判断单元包括:第一获取子单元,用于从性能测试任务表中获取所述优先级最高的性能测试任务的资源需求;确定子单元,用于将所述资源需求代入预先建立的协议消耗模型,确定出所述优先级最高的性能测试任务所需的服务器资源量;第二获取子单元,用于从起压服务器集群表中获取起压服务器集群中各个起压服务器所能提供的空闲资源量;判断子单元,用于判断所述各个起压服务器所能提供的空闲资源量之和,是否大于等于所述优先级最高的性能测试任务所需的服务器资源量;若是,则判定起压服务器集群能够满足所述优先级最高的性能测试任务的需求,否则,判定起压服务器集群不能够满足所述优先级最高的性能测试任务的需求。上述技术方案具有如下有益效果:在确定事件队列中存在新的事件的情况下,将任务队列中的性能测试任务分配给起压服务器集群进行性能测试,从而可以实现起压服务器的自动分配与任务的自动下发,避免了现有的性能测试方式中所存在的除了需要测试方法和测试数据外,还需要自行配置起压服务器的技术问题,达到了有效利用起压服务器的资源,以高效完成多个性能测试任务的技术效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的性能测试方法的方法流程图;图2是根据本专利技术实施例的性能测试装置的结构框图;图3是根据本专利技术实施例的性能测试系统的架构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为了对本申请进行更为清楚的说明,下面对本申请涉及到的一些概念解释如下:1)测试配置,可以指代性能测试中具体的测试方法、测试数据和起压服务器配置的总称,性能测试工具通常根据测试配置进行性能测试。2)起压服务器,可以指代实际向被测试系统产生并发送请求的服务器,用于使被测试的服务器获得足够大的请求量。3)分布式平台,可以指代将数据存储、数据分析和计算等构建在由多个主机构成的集群的软件平台,在本例中,分布式平台指代部署了性能测试服务的服务器集群。4)协议,可以指代被测试系统与其调用方之间的通讯约定,对于调用方必须按照约定向被测试系统发送对应格式的数据才能进行正常的通本文档来自技高网...
一种性能测试方法和装置

【技术保护点】
一种性能测试方法,其特征在于,包括:监测事件队列中是否出现新的事件,其中,所述事件队列用于传递起压服务器集群变化、或者性能测试任务状态变化的事件;在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试。

【技术特征摘要】
1.一种性能测试方法,其特征在于,包括:监测事件队列中是否出现新的事件,其中,所述事件队列用于传递起压服务器集群变化、或者性能测试任务状态变化的事件;在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试。2.根据权利要求1所述的方法,其特征在于,在监测到所述事件队列中出现新的事件时,从任务队列中获取性能测试任务,并分配给起压服务器集群进行性能测试,包括:从任务队列中获取优先级最高的一个性能测试任务;判断起压服务器集群是否能够满足所述优先级最高的性能测试任务的需求;如果满足,则将所述优先级最高的性能测试任务分配给所述起压服务器集群进行性能测试;否则,返回监测事件队列中是否出现新的事件。3.根据权利要求2所述的方法,其特征在于,判断起压服务器集群是否能够满足所述优先级最高的性能测试任务的需求,包括:从性能测试任务表中获取所述优先级最高的性能测试任务的资源需求;将所述资源需求代入预先建立的协议消耗模型,确定出所述优先级最高的性能测试任务所需的服务器资源量;从起压服务器集群表中获取起压服务器集群中各个起压服务器所能提供的空闲资源量;判断所述各个起压服务器所能提供的空闲资源量之和,是否大于等于所述优先级最高的性能测试任务所需的服务器资源量;若是,则判定起压服务器集群能够满足所述优先级最高的性能测试任务的需求,否则,判定起压服务器集群不能够满足所述优先级最高的性能测试任务的需求。4.根据权利要求3所述的方法,其特征在于,分配给起压服务器集群进行性能测试,包括:生成配置文件,其中,所述配置文件中记录所述起压服务器集群中各个起压服务器所需承担的性能测试任务;将所述配置文件传送至所述起压服务器集群;所述起压服务器集群中的各个起压服务器根据所述配置文件中记录的各个起压服务器所需承担的性能测试任务,进行性能测试。5.根据权利要求1所述的方法,其特征在于,所述事件队列中的事件包括以下至少之一:起压服务器集群扩容、起压服务器集群缩容、新增性能测试任务、性能测试任务执行完成。6.根据权利要求1所述的方法,其特征在于,起压服务器集群上的性能测试任务执行完成之后,所述方法还包括:在文件存储系统中存储性能测试结束后产...

【专利技术属性】
技术研发人员:周源秦元博贾晓捷王佳佳郭铁君
申请(专利权)人:微梦创科网络科技中国有限公司
类型:发明
国别省市:北京,11

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

1