一种Web系统的性能分析方法和装置制造方法及图纸

技术编号:15649958 阅读:242 留言:0更新日期:2017-06-17 02:52
本发明专利技术公开了一种Web系统的性能测试方法和装置,所述方法包括:在Web系统未满足用户的性能需求时,从所述Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试;分析所述应用组件每次压力测试时所述Web系统的性能,在确定出现性能瓶颈时,优化所述应用组件;在所述应用组件结束所述迭代化的压力测试时,对所述Web系统进行混合场景的压力测试,判断所述Web系统是否满足用户的性能需求;在所述Web系统仍不满足用户的性能需求时,根据预先建立的性能瓶颈分布模型从所述Web系统的应用组件中选取下一应用组件作为新的测试对象进行迭代化的压力测试。本发明专利技术的技术方案能够提高测试效率、缩短性能测试周期、降低测试成本。

【技术实现步骤摘要】
一种Web系统的性能分析方法和装置
本专利技术涉及性能测试
,特别涉及一种Web系统的性能测试方法和装置。
技术介绍
由于Web应用是一系列分布于Wed服务器的程序和多媒体资源的集合,具有分布性、异构性和多用户的特点,并且Web应用大多为B/S(Browser/Server,浏览器/服务器)架构,使用Http协议,采用客户/Web服务器/数据库服务器的设计模式,这种多层次结构使得系统出现问题的概率大大增加。因而,Web系统的质量越来越引起用户的关注,特别是Web性能测试,往往需要深入到软件开发、数掘通信、硬件支持等多个方面,愈加受到人们的关注。但性能测试难度大、周期长、要求高是一直困扰性能测试人员和开发人员的问题,虽然有一些工具能够对系统的某些性能指标有监控和跟踪,但是基于应用系统的业务繁琐性、系统架构的技术难度复杂性,用户行为的不可预见性等诸多因素的影响,Web系统的性能测试正变得比较困难,如果测试方法不当,系统性能测试反而无法反应系统本身的真实情况,有些测试结果反而误导开发和测试人员,致使系统的开发和测试浪费大量的时间和金钱,影响了产品的发布,最终影响到了用户的体验。
技术实现思路
鉴于上述问题,本专利技术提供一种Web系统的性能测试方法和装置,以解决现有技术Web系统性能测试周期长、成本高、测试效率低的问题。为达到上述目的,本专利技术的技术方案是这样实现的:一方面,本专利技术提供了一种Web系统的性能测试方法,所述方法包括:在Web系统未满足用户的性能需求时,从Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试;分析应用组件在进行每次压力测试时Web系统的性能,在确定Web系统出现所述应用组件在压力测试下引起的性能瓶颈时,优化应用组件;在应用组件结束所述迭代化的压力测试时,对Web系统进行混合场景的压力测试,判断Web系统是否满足用户的性能需求;在Web系统仍不满足用户的性能需求时,根据预先建立的性能瓶颈分布模型从Web系统的应用组件中选取下一应用组件作为新的测试对象进行迭代化的压力测试。优选地,所述性能瓶颈分布模型通过下述方法建立:获取所述Web系统的各应用组件以及各应用组件之间的通讯方式;根据所述Web系统的性能瓶颈的潜在位置将所述Web系统从下向上依次划分为底层的硬件层性能瓶颈、中间层的系统层性能瓶颈和顶层的应用层性能瓶颈,并将所述Web系统的各应用组件划分到相应的层级;根据所述应用组件之间的通讯方式建立所述Web系统的应用组件间的业务逻辑关系,从而获得所述性能瓶颈分布模型。进一步优选地,所述根据预先建立的性能瓶颈分布模型从所述Web系统的应用组件中选取下一应用组件作为新的测试对象进行迭代化的压力测试包括:确定当前应用组件在所述性能瓶颈分布模型中的层级,首先判断所述当前应用组件所在层级中是否存在与其具有业务逻辑关系的其他应用组件,若存在,则选取该层级中与所述当前应用组件具有业务逻辑关系的一应用组件作为新的测试对象;若不存在,当所述当前应用组件处于所述性能瓶颈分布模型中的底层时,则按照从下向上的方向依次判断中间层、顶层中是否存在与该当前应用组件具有业务逻辑关系的其他应用组件;当所述当前应用组件处于所述性能瓶颈分布模型中的顶层时,则按照从上向下的方向依次判断中间层、底层中是否存在与该当前应用组件具有业务逻辑关系的其他应用组件;当所述当前应用组件处于所述性能瓶颈分布模型中的中间层时,先判断顶层中是否存在与该当前应用组件具有业务逻辑关系的其他应用组件,在顶层不存在与其具有业务逻辑关系的其他应用组件时,再判断底层是否存在与其具有业务逻辑关系的其他应用组件。优选地,所述从所述Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试包括:根据用户的性能需求,确定所述Web系统的相关应用组件;根据所述Web系统的相关应用组件的通讯方式,从所述Web系统的相关应用组件中确定一重点影响的应用组件作为测试对象进行迭代化的压力测试。进一步优选地,所述从所述Web系统的相关应用组件中确定一重点影响的应用组件作为测试对象进行迭代化的压力测试包括:选取测试工具,并设定所述测试对象的压力测试参数的初始值、终止值和迭代步长,所述压力测试参数包括测试环境参数和测试压力值;利用所述测试工具,从所述压力测试参数的初始值开始对所述测试对象进行压力测试,并收集用于反映所述Web系统性能的测试数据;按照所述迭代步长调整所述压力测试参数,对所述测试对象进行调整后的压力测试参数的压力测试,并在所述压力测试参数值达到所述压力测试参数的终止值时,结束所述测试对象的压力测试。优选地,分析所述应用组件在进行每次压力测试时所述Web系统的性能具体为:根据用于反映所述Web系统性能的测试数据来分析所述Web系统的性能;所述方法还包括:所述对所述Web系统进行混合场景的压力测试,判断所述Web系统是否满足用户的性能需求,在所述Web系统已满足用户的性能需求时,所述方法结束。优选地,所述对所述Web系统进行混合场景的压力测试,判断所述Web系统是否满足用户的性能需求包括:利用所述测试工具对所述Web系统的所有相关应用组件进行压力测试,并收集所述Web系统的性能数据;将收集到的所述Web系统的性能数据与所述用户的性能需求进行比较,在所述Web系统的性能数据达到所述用户的性能需求时,判断所述Web系统满足用户的性能需求。另一方面,本专利技术提供了一种Web系统的性能测试装置,所述性能测试装置包括:应用组件测试单元,用于在Web系统未满足用户的性能需求时,从Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试;应用组件优化单元,用于分析应用组件在进行每次压力测试时Web系统的性能,在确定Web系统出现性能瓶颈时,优化应用组件;混合场景测试单元,用于在应用组件结束迭代化的压力测试时,对Web系统进行混合场景的压力测试,判断Web系统是否满足用户的性能需求;应用组件选取单元,用于在混合场景测试单元判断Web系统仍不满足用户的性能需求时,根据预先建立的性能瓶颈分布模型从Web系统的应用组件中选取下一应用组件作为新的测试对象,并驱动应用组件测试单元对新的测试对象进行迭代化的压力测试。优选地,所述性能瓶颈分布模型通过下述方法建立:获取所述Web系统的各应用组件以及各应用组件之间的通讯方式;根据所述Web系统的性能瓶颈的潜在位置将所述Web系统从下向上依次划分为底层的硬件层性能瓶颈、中间层的系统层性能瓶颈和顶层的应用层性能瓶颈,并将所述Web系统的各应用组件划分到相应的层级;根据所述应用组件之间的通讯方式建立所述Web系统的应用组件间的业务逻辑关系,从而获得所述性能瓶颈分布模型。优选地,所述应用组件选取单元包括:层级确定模块,用于确定当前应用组件在所述性能瓶颈分布模型中的层级;主判断模块,用于首先判断所述当前应用组件所在层级中是否存在与其具有业务逻辑关系的其他应用组件,若存在,则选取该层级中与所述当前应用组件具有业务逻辑关系的一应用组件作为新的测试对象;从判断模块,用于在所述主判断模块判断所述当前应用组件所在层级中不存在与其具有业务逻辑关系的其他应用组件时,若所述当前应用组件处于所述性能瓶颈分布模型中的底层本文档来自技高网...
一种Web系统的性能分析方法和装置

【技术保护点】
一种Web系统的性能测试方法,其特征在于,所述方法包括:在Web系统未满足用户的性能需求时,从所述Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试;分析所述应用组件在进行每次压力测试时所述Web系统的性能,在确定所述Web系统出现所述应用组件在压力测试下引起的性能瓶颈时,优化所述应用组件;在所述应用组件结束所述迭代化的压力测试时,对所述Web系统进行混合场景的压力测试,判断所述Web系统是否满足用户的性能需求;在所述Web系统仍不满足用户的性能需求时,根据预先建立的性能瓶颈分布模型从所述Web系统的应用组件中选取下一应用组件作为新的测试对象进行迭代化的压力测试。

【技术特征摘要】
1.一种Web系统的性能测试方法,其特征在于,所述方法包括:在Web系统未满足用户的性能需求时,从所述Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试;分析所述应用组件在进行每次压力测试时所述Web系统的性能,在确定所述Web系统出现所述应用组件在压力测试下引起的性能瓶颈时,优化所述应用组件;在所述应用组件结束所述迭代化的压力测试时,对所述Web系统进行混合场景的压力测试,判断所述Web系统是否满足用户的性能需求;在所述Web系统仍不满足用户的性能需求时,根据预先建立的性能瓶颈分布模型从所述Web系统的应用组件中选取下一应用组件作为新的测试对象进行迭代化的压力测试。2.根据权利要求1所述的性能测试方法,其特征在于,所述性能瓶颈分布模型通过下述方法建立:获取所述Web系统的各应用组件以及各应用组件之间的通讯方式;根据所述Web系统的性能瓶颈的潜在位置将所述Web系统从下向上依次划分为底层的硬件层性能瓶颈、中间层的系统层性能瓶颈和顶层的应用层性能瓶颈,并将所述Web系统的各应用组件划分到相应的层级;根据所述应用组件之间的通讯方式建立所述Web系统的应用组件间的业务逻辑关系,从而获得所述性能瓶颈分布模型。3.根据权利要求2所述的性能测试方法,其特征在于,所述根据预先建立的性能瓶颈分布模型从所述Web系统的应用组件中选取下一应用组件作为新的测试对象进行迭代化的压力测试包括:确定当前应用组件在所述性能瓶颈分布模型中的层级,首先判断所述当前应用组件所在层级中是否存在与其具有业务逻辑关系的其他应用组件,若存在,则选取该层级中与所述当前应用组件具有业务逻辑关系的一应用组件作为新的测试对象;若不存在,当所述当前应用组件处于所述性能瓶颈分布模型中的底层时,则按照从下向上的方向依次判断中间层、顶层中是否存在与该当前应用组件具有业务逻辑关系的其他应用组件;当所述当前应用组件处于所述性能瓶颈分布模型中的顶层时,则按照从上向下的方向依次判断中间层、底层中是否存在与该当前应用组件具有业务逻辑关系的其他应用组件;当所述当前应用组件处于所述性能瓶颈分布模型中的中间层时,先判断顶层中是否存在与该当前应用组件具有业务逻辑关系的其他应用组件,在顶层不存在与其具有业务逻辑关系的其他应用组件时,再判断底层是否存在与其具有业务逻辑关系的其他应用组件。4.根据权利要求1所述的性能测试方法,其特征在于,所述从所述Web系统的应用组件中选取一应用组件作为测试对象进行迭代化的压力测试包括:根据用户的性能需求,确定所述Web系统的相关应用组件;根据所述Web系统的相关应用组件的通讯方式,从所述Web系统的相关应用组件中确定一重点影响的应用组件作为测试对象进行迭代化的压力测试。5.根据权利要求4所述的性能测试方法,其特征在于,所述从所述Web系统的相关应用组件中确定一重点影响的应用组件作为测试对象进行迭代化的压力测试包括:选取测试工具,并设定所述测试对象的压力测试参数的初始值、终止值和迭代步长,所述压力测试参数包括测试环境参数和测试压力值;利用所述测试工具,从所述压力测试参数的初始值开始对所述测试对象进行压力测试,并收集用于反映所述Web系统性能的测试数据;按照所述迭代步长调整所述压力测试参数,对所述测试对象进行调整后的压力测试参数的压力测试,并在所述压力测试参数值达到所述压力测试参数的终止值时,结束所述测试对象的压力测试。6.根据权利要求5所述的...

【专利技术属性】
技术研发人员:王庆磊侯端康
申请(专利权)人:北京神州泰岳软件股份有限公司
类型:发明
国别省市:北京,11

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

1