基于Web系统的性能测试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Web系统的性能测试
摘要:Web应用系统具有方便、快速、易操作性等特点,使得社会中的各行业越来越倾向于使用Web应用系统开展自身业务以及扩大社会影响力。随着Web应用系统的广泛使用,用户对性能的要求越来越高。该文主要介绍了Web应用系统的关键性能指标及测试方法,结合案例评估和分析Web应用系统性能的过程。
关键词:Web应用系统性能测试性能指标LoadRunner 中图分类号:TP311 文献标识码:A 文章编号:
1007-9416(2014)04-0156-02
基于Web的应用系统在当今互联网盛行的时代被广泛应用于社会的各个领域,比如:教育行业、交通系统、移动通信、金融系统以及政府部门等各个领域。由于Web系统所具有的快捷、易使用的特点,使得社会中人们对Web系统更加依赖,也促使了社会各个领域对Web应用系统的重视,纷纷把原有的业务操作模式网络化。但是在网络化的过程中,随着工作流的增加、使用人员的增多以及业务数据量的剧增,问题也随之而来:如果交互的信息量过大,经常会导致系统反应速度骤降或者系统宕机。因此,社会各领域中的Web应用系统能否承受住大量的数据访问以及业务操作、并
能够快速地响应使用者的请求、系统能否长时间稳定地运行,系统的性能瓶颈所在,这些都是用户所关心的性能表现。性能测试的目的是检测系统性能是否符合用户的需求,有无性能方面的瓶颈;所以性能测试是项目建设过程中重要的一环。测试方法一般采用负载测试、压力测试等方法。
1 性能测试简介
性能测试考察的是通过性能指标验证系统有无性能问题。测试方法主要包括负载测试、压力测试、大数据量测试、疲劳强度测试等。在测试过程中通常是模拟真实用户使用环境下的负载量,统计分析系统各方面的性能数据,得出性能测试结论。在实际的测试工作中,通常要结合几种测试方法,综合分析测试过程中体现出来的各种数据。
1.1 性能测试类型
(1)负载测试:是在系统真实的用户环境下或模拟系统真实运行环境及用户真实业务使用场景情况下,通过不断给系统增加压力,在一定压力下延长系统运行时间,来验证系统各项性能指标的变化情况,直到系统性能出现拐点。目前一般采用业内经常使用的测试工具LoadRunner来执行测试。当然也可以采用其他的测试工具。本文是利用LoadRunner进行测试。
(2)压力测试:是对系统不断增加负载,让系统在处于极限负载的情况下或者是某项指标已经处于饱和的状态
下,继续增加负载量或运行时间,观察系统性能表现,验证系统是否出现内存泄露、系统宕机等异常情况。通常压力测试伴随着负载测试。
(3)大数据量测试:包含两层意思,既可指在某些容器(如数据库、存储设备)中有较大数量的数据记录情况下对系统进行的测试,也可指进行并发或某些操作时创建大量数据来动态的开展测试。大数据量测试主要是指用大批量数据对系统产生压力或影响,同时验证系统各项指标运行是否正常。
(4)疲劳强度测试:被测应用系统是否可以长时间的运行正常,一般伴随着压力测试或者是以日常普通压力运行很长一段时间,系统能否运行稳定。
1.2 性能测试指标简介
性能测试是保证软件质量的重要一环,通过不同的负载,观察系统运行过程中的性能指标,发现问题所在,并不断解决问题、优化系统。以达到客户的性能方面的要求。
应用系统的性能主要通过各项性能指标来体现。Web应用系统项目性能测试主要有以下几个性能指标:
(1)吞吐量:是指在一次性能测试过程中网络上传输的数据量总和。吞吐率:是吞吐量/传输时间,通常用来表示单位时间内传输的数据量,吞吐率是一个非常重要的性能指标,一个系统的负载能力越强,那就意味着系统在单位时间
内处理的数据量就越大,吞吐量也越大。当用户请求数达到足够大时,系统性能会发生变化,吞吐量会逐渐处于饱和状态并有可能出现拐点。
(2)最大并发用户数:系统能够在某一特定的时间段内能同时正确处理并及时处理的最大用户数。一般采用负载测试或压力测试,获得系统比较合理的并发数据量,达到客户的性能需求。
(3)响应时间:是指对请求做出响应所需要的时间。当系统在高负载的作用下出现某一种或几种资源耗尽时,响应时间随之急剧增加,进而观察其他性能数据的变化。发现系统可能存在的瓶颈。
(4)资源利用率:指的是在一段时间内资源平均被占用的情况,例如内存利用率、CPU占用情况等。分析某个系统性能最重要的一个指标是资源利用率,通过分析各资源的使用情况做出改善系统性能的决策。
由于Web系统结构非常复杂,所以性能测试是一项复杂的工作,涉及到的性能指标较多,测试过程中应明确测试目的,考察重要的性能指标,借助于自动化测试软件监控性能指标数据。
1.3 web项目体系结构
Web应用系统一般是三层的体系结构,即客户端---应用服务器---数据库服务器三层体系结构。在该体系结构中,Web
浏览器作为客户端,提供图形用户界而,负责与客户进行交流。它通过HTTP协议从应用层的HTTP服务器下载超文本页面,同时下载并执行内嵌在页面中的客户端程序或中间代码。向应用服务器中有关服务对象发出请求。Web服务器收到请求后,调用数据库服务器和其它服务器,处理请求、返回结果并把结果显示到客户端的浏览器上。依据Web应用系统的体系结构.Web应用系统性能测试主要可从三方面进行:应用系统在浏览器端的性能测试、应用系统在网络上传输时的性能测试、应用系统在服务器端的性能测试,本文主要讨论应用系统在浏览器端的性能表现,主要包括负载测试、压力测试。
1.4 测试过程与结果分析
性能测试过程主要包括性能测试需求分析、测试设计、测试执行、测试结果分析等步骤。系统性能测试是评估系统运行能力、分析系统瓶颈的一个重要手段,通过性能测试用户能够了解在不同的情况下系统业务的响应时间。以及系统能够处理的最大并发用户数。下面通过实例说明测试Web应用系统性能的步骤与结果分析,本文借助自动化测试工具LoadRunner,采用负载测试、压力测试方法评估系统性能。
2 测试背景
“某经营管理系统”采用的是B/S结构,该经营管理系统实现集团对经营过程的监控与管理,减少重复录入工作