性能测试论文性能测试论文_第1页
性能测试论文性能测试论文_第2页
性能测试论文性能测试论文_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、论文关键词:web应用性能测试loadrunner论文摘要:性能测试可以测算出应用系统能够承受的负荷,从而保证系统在实际压力下的正常工作。本文通过一种能够模拟真实用户实际行为的方法,对应用系统进行性能测试,获取数据进行分析,并对其性能指标进行比较,找到系统瓶颈,从而进行性能优化。引言WorldWideWeb简称Web或WWW,中文名字万维网。是自20世纪90年代以来最重要白Internet应用。作为一种资源的组织和表达机制,Web已成为Internet最主要的信息传送媒介。随着Internet的迅速发展,web应用越来越深入人们的工作和生活。java自1995年问世以来,由于其简单易学、跨平台

2、、纯面向对象等诸多优点吸引了人们。因此基于java的web应用程序得到了广泛的应用。软件除了能满足用户的需求之外,还要保证各个部分协调有效的运行,发挥整个系统的一体作用,因此软件的性能也是非常重要的。在保证软件质量的过程中,需要进行各种测试,例如功能测试、性能测试、可用性测试、客户端兼容性测试及安全性测试。由于基于web的B/S架构的应用程序,客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担,这使得服务器的负担很重。因此系统并发的用户数,系统的事务率及响应时间,在基于JAVA的web应用程序尤其重要。所以本文着重描述其性能测试。1 .软件性能测试软件性能测试是为了描述对象

3、与性能相关的特性并对其进行评价,而实施和执行的一类测试。性能测试主要拉我软件是否达到需求规格说明中规定的各类性能指标,并满足一些性能相关的约束和限制条件。中国软件评测中心将性能测试概括为三个方面:应用在客户端性能的测试、应用在网络上性能的测试和应用在服务器端性能的测试。本文主要关注应用在客户端性能的测试。应用在客户端性能测试的目的是考察客户端应用的性能,测试的入口是客户端。它主要包括并发性能测试、疲劳强度测试、大数据量测试和速度测试等,其中并发性能测试是重点。并发性能测试的过程是一个负载测试和压力测试的过程,即逐渐增加负载,直到系统的瓶颈或者不能接受的性能点,通过综合分析交易执行指标和资源监控

4、指标来确定系统并发性能的过程。负载测试是确定在各种负载下系统的性能,目标是测试当负载逐渐增加时,系统组成部分的相关输出项,例如通过量、响应时间、CUP负载、内存使用等来决定系统的性能。负载测试是一个分析软件应用程序和支撑架构、模拟真实些的使用,从而来确定能够接受的性能过程。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。并发性能测试的目的主要体现在三个方面:以真实的业务为依据,选择有代表性的、关键的业务操作设计测试案例,以评价系统的当前性能;当扩展应用程序的功能或者新的应用程序将要被部署时,负载测试会帮助确定系统是否还能够处理期望的用户负载,以预测系

5、统的未来性能;通过模拟成百上千个用户,重复执行和运行测试,可以确认性能瓶颈并优化和调整应用,目的在于寻找到瓶颈问题。2 .基于JAVA的WEB应用程序性能测试策略软件测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。对任意一个程序进行的测试,无论使用自动化的测试工具或是手动测试,穷尽测试是不可能。任何一个经过严格测试的程序,也不能保证其百分之百的正确。因此,为了较少这种不必要的错误。测试之前一定先要制定其测试策略,测试计划,选用合适的测试工具,从而设计出高效的测试用例。只有这样,一个好的测试策略和好的测试计划才能做到事倍功半的作用。基

6、于JAVA的web应用程序性能测试重点在于并发测试。并发测试一般使用虚载测试的方法,即通过一个控制器发送测试信息给多个参与测试的主机,在每台机器上模拟多个用户的操作(使用多个进程或线程)向服务器发送用户请求,使系统运行起来。基于以上的工作原理,其性能测试采用的策略主要有:(1)脚本的个数、负载生成器和每个组中包括的VUSER数为固定数。(2)脚本的个数、负载生成器和每个组中包括的Vuser数可以以一定的百分比进行改变。(3)可以固定虚拟用户数、每秒事务数、每分钟也面数及事务的响应时间。(4)可以设置脚本的种类(5)设置不同的操作系统,模拟真实的用户现象。3 .性能测试的实现性能测试,大多数的测

7、试只有借助测试工具才能完成。目前,广泛使用的性能测试工具大多是商业软件,如mercuryinteractive公司的loadrunner、AstraLoadTest,Compuware公司的QALoad,IBMRational公司的TeamTest。本文选用的用Mercury公司的自动化性能测试工具loadrunner,在WindowsXP,MySql数据库的测试环境下进行性能测试。(1)性能测试设计Loadrunner是一个可以进行自动化测试执行,并对测试的数据进行分析,从而得到系统瓶颈的行业标准的性能测试解决方案。有以下三部分组成:VuGen用来录制虚拟用户的脚本。Controller用来

8、执行脚本并且对整个测试过程进行监控。Analysis提供图和报表来显示测试结果。具体方法:首先通过使用VuGen(虚拟用户生成器)录制用户在客户端应用程序中执行的典型业务流程来开发Vuser脚本。VuGen还可以运行脚本,为了成功的把脚本集成到LoadRunner方案中,在录制了基本的Vuser脚本以后,还要对脚本进行增强及编辑,设置好运行时环境后,以独立模式运行Vuser脚本。其次通过Controller从一个单一的控制点简单有效地控制所有的Vuser。导入测试脚本,在方案(描述测试会话期间发生的事情)中配置女?Vuser的计算机列表、运行Vuser脚本的列表以及在方案执行期间运行的指定数量

9、的Vuser或Vuser组。执行方案时,Controller将该方案中的每个Vuser分散到负载生成器,负载生成器是执行Vuser脚本,从而使Vuser可以模拟实际用户操作的计算机。在运行的同时,还可以用LoadRunner的性能监视器来监视方案的执行。最后,Analysis把在方案执行期间,LoadRunner纪录下来的不同负载下的应用程序性能,以图和报表显示出来。从而可以方便的分析出应用程序的性能。(2)性能测试数据的准备通过使用最少的硬件资源,为所有VUSER提供一致的、可重复并可度量的负载,像实际用户一样使用开发的应用程序,这是Loadrunner的一大特点及优势。在提供负载时,除了准

10、备一些比较有代表性的数据,还要注意测试脚本的重用问题。一个是关联,即通过参数化,来实现测试用例的充分利用。另一个是ip欺骗因为当运行场景时,虚拟用户使用它们所在的负载生成器的固定的IP地址。每个LoadGenerator上(同时)运行大量的虚拟用户,这样就造成了大量的用户使用同一IP同时访问一个网站的情况,这种情况和实际运行的情况不符,并且有一些网站会限制同一个IP的登陆。为了更加真实的模拟实际情况,LoadRunner允许运行的虚拟用户使用不同的IP访问同一网站,这种技术称为“IP欺骗”.(3)性能测试执行在测试计划、测试生提及测试数据准备好以后就可以进行测试。Controller通过远程代

11、理调度程序启动负载生成器计算机上的应用程序。通过代理Controller和负载生成器互相理位。运行方案时,Controller指示远程代理调度程序启动LoadRunner代理。该代理根据从Controller接受到的指令来初始化、运行、暂停和停止各个Vuser。同时,该代理还将各个Vuaer的状态数据传回Controller。(4)性能测试评估在应用程序的测试测试结束后,可以对应其各个性能指标来分析系统的可用性。有许多因素能够影响系统的性能指标,如,测试环境、网络、应用的数据库和中间件的使用及它们之间的关联应用。其中任何一个环节都可能造成整个系统的可用性。LoadrunnerControlle

12、r通过隔离并标识潜在的客户端、网络和服务器瓶颈。监视负载下的网络和服务器资源,检查出现性能延迟的地方:网络或客户端延迟、CPU性能、I/O延迟、数据锁定或服务器上的其他问题。在进行web应用测试中,LOADRUNNER提供的性能指标有每秒点击次数吞吐量每秒HTTP响应数、每秒下载页面数每秒连接数。同时。用户通过在LOARUNNERANALYSIS中看到这些性能指标的图或报表,很方便的分析各部分的性能状况。4 .总结任何软件的测试结果都不是只与应用程序本身有关,特别是性能测试,还与其测试硬件环境、软件环境、测试方法及测试工具有关,因此在进行测试之前、一定要了解应用程序的使用及运行的约束条件。LoadrunnerController通过使用虚拟用户技术来达到并发的目的,这个测试属于黑盒测试,测试人员不需

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论