基于WebStart的应用程序性能测试研究及应用 前沿论文_第1页
基于WebStart的应用程序性能测试研究及应用 前沿论文_第2页
基于WebStart的应用程序性能测试研究及应用 前沿论文_第3页
基于WebStart的应用程序性能测试研究及应用 前沿论文_第4页
基于WebStart的应用程序性能测试研究及应用 前沿论文_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

1、基于 web start 的应用程序性能测试研究及 应用冷知见5(武汉理工大学计算机科学与技术,武汉 430070) 摘要:目前,性能测试在软件的质量保证中越来越重要,系统性能的好坏直接影响了企业对 外提供服务的质量。本文提供了基于 web start 发布的应用程序性能测试的一种解决方案. 通过对性能测试类型以及性能测试流程的研究,对性能测试工具的比较及分析,采用 tptp 工具完成了 web start 发布的应用程序的性能测试,同时,分析了系统功能模块的优化问题,10为开发人员提供参考。总之,要做好性能测试,测试人员要有清晰的工作思路,简洁的测试 流程和良好的测试方法,并且需要开发人员的

2、充分配合。 关键词:性能测试;软件生命周期;测试过程;web start;tptp中图分类号:tp31115the performance testing of application based on web start and its applicationleng zhijian(school of computer science and technology ,wuhan university of technology, wuhan 430070)abstract: up to now, performance testing becomes more and more impor

3、tant in software quality20assurance. the performance of system directly affects the quality of services provided by enterprises. this article provides a solution of the performance testing of application based on web start. by researching the type of performance testing and the process of performanc

4、e testing,comparing and analyzing the performance testing tools, using tptp to complete the performance testing of application based on web start, meanwhile, analyzing the optimization problem of the25functional modules of the system to provide a reference for developers. in short, in order to do pe

5、rformance testing well, testers should have a clear idea of the work, simple testing proceduresand a good testing method, and requires developers to cooperate with the testers fully.keywords:performance testing; software lifecycle; testing process; web start; tptp300引言随着软件业的发展,其应用已经贯穿了人们生活的各个方面。软件质量

6、的好坏直接影响 了软件供应商的生存与发展,软件测试面临着前所未有的挑战。现在,软件测试所面临的主 要挑战是:客户要求软件的功能更加齐全,交付的速度更加快,价格更加便宜,同时,又要 求软件的质量达到他们的期望。然而系统性能的好坏直接影响企业对外提供服务的质量,性35能测试在软件的质量保证中起着重要的作用。1软件性能测试基础1.1 性能测试的类型从广义的性能测试来讲,应用程序的性能测试类型主要包括以下几个方面:(1)性能测试:通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是40否满足生产性能要求。主要目的是为了验证被测系统的响应时间、速度、扩展性和稳定性等 特征。作者简介:冷知见,(1

7、984-),女,硕士研究生,主要研究方向:软件工程. e-mail: (2)负载测试:确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统 各项性能指标的变化情况。通过系统响应时间,吞吐量和资源利用率,我们可以确定应用程 序的崩溃条件。45(3)压力测试:为了确定一个系统的瓶颈或者使用极限的测试。压力测试的目的是为 了检验系统处于高压力下的表现,从而识别出应用程序的弱点。在极端负载条件下,系统出 现的问题可能为同步问题,竞争条件和内存泄漏等。(4)容量测试:确定一个系统能够支持的最大用户数,并且仍然能够满足性能指标。(5)配置测试:为了了解各种不同因素对

8、系统性能影响的程度,从而判断出最值所进50行的调优操作。这种性能测试方法一般在对系统性能状况有初步了解后才能进行,从而用于 性能调优和规划能力。(6)并发测试:这种性能测试方法的主要目的是发现系统中可能隐藏的并发访问时的 问题,主要关注系统可能存在的并发问题,可以在开发的各个阶段使用,需要相关的测试工 具的配合和支持。55(7)可靠性测试:通过给系统加载一定的业务压力的情况下,让系统持续运行一段时 间,测试系统在这种条件下是否能够稳定运行。(8)失效恢复测试:针对有冗余和负载均衡的系统设计的。这种测试方法可以用来检 验如果系统局部发生故障,用户是否能够继续使用系统1 2。1.2 性能测试工具介

9、绍及优缺点60目前市场上的性能测试工具种类很多,一般可以划分为以下几种:负载压力测试工具、 资源监控工具、故障定位工具以及调优工具。主流的性能测试工具有以下几个。(1)qaload:美国 compuware 公司的 qaload 是客户机/服务器系统、企业资源计划 和电子商务应用的自动化负载测试工具。qaload 是 qacenter 性能版的一部分,它通过可 重复的、真实的测试能够彻底地度量应用的可扩展性和性能。65(2)loadrunner:loadrunner 是一种预测系统行为和性能的负载测试工具,通过模拟上 千万用户实施并发负载及实时性能监测的方式来确认和查找问题。loadrunne

10、r 能够对整个企 业架构进行测试,loadrunner 适用于各种体系架构,能支持广范的协议和技术(如 web、 ftp、database 等),能预测系统行为并优化系统性能。(3)webload:webload 是 radview 公司推出的一个性能测试和分析工具,它让 web70应用程序开发者自动执行压力测试;webload 通过模拟真实用户的操作,生成压力负载来测 试 web 应用的性能3。(4)tptp:即 test and performance tools platform,可以对代码进行测试,检验代码的操作 和正确性。它也可以对代码进行分析,来消除性能瓶颈和资源浪费,尤其是内存。

11、通过对代 码监视,可以对故障进行定位、识别使用模式、寻找进一步增强和优化的机会以及探测入侵75尝试和实际的入侵。(5)apache jmeter:它是一个 java 桌面应用程序,用于对 web 应用软件做压力测试。 它可以用于测试静态和动态资源,例如静态文件、java 小服务程序、cgi 脚本、java 对象、 数据库、ftp 服务器等等。jmeter 可以用于对服务器、网络或对象模拟巨大的负载,在不同 压力类别下测试它们的强度和分析整体性能。80这些软件的功能虽然强大,并且可以自动生成测试报告,但其终究是一个工具,如果想 真正定位服务器性能的好坏和性能的瓶颈所在,需要使用工具的人对于测试软

12、件的方方面面都要有了解,比如软件体系构架、网络拓扑、服务器硬件等知识。2应用程序 web start 发布方式8590951001051101152.1 web start 介绍java web start 是 sun 提供的一种通过 web 来部署和发布 java 程序的新技术,它既可 以用来发布 application,也可以用来发布 applet,它仅在第一次运行时下载程序,以后的事 情,就全部交给 java web start,包括版本的自动更新和维护。程序运行在客户端,但不用去 安装配置客户端,也不用去考虑版本升级后对客户端的维护,从而可避免复杂的安装或升级 过程。2.2 web s

13、tart 发布方式的优点web start 发布方式的优点如下:(1)方便。传统情况下,通过 web 发布软件需要用户在 web 上查找、下载,而后在 系统中存放并执行安装程序。执行安装程序后,将提示指定安装路径和安装选项,例如完全、 典型或最小安装。这是一项耗时而又复杂的任务,并且在安装软件的每个新版本时都必须重 复进行。相反,通过 web 部署的应用程序,例如您喜爱的基于 html 的电子邮件客户软件 和日历、拍卖站点等等,都非常容易安装和使用。web 浏览器使整个过程自动完成。没有 复杂的下载、安装和配置过程,并且确保您始终使用最新版本。(2)高交互性。高度交互的用户界面,可与传统应用程

14、序,例如文字处理和电子表格 软件相媲美。(3)较低的带宽需求。应用程序无须在每次单击时都与 web 服务器进行连接,它可以 缓存已经下载的信息。这样,它可以在低速连接上实现更好的交互性。支持脱机使用。当然, 在第一次使用时仍得下载应用程序。(4)安全性。java web start 构建于 java2 平台之上,该平台提供完善的安全体系结构。 在缺省情况下,通过 java web start 启动的应用程序将在受控的环境中运行,只能对文件和 网络进行有限的访问。因此,通过 java web start 启动应用程序可保持系统的安全性和完整 性。3性能测试的应用3.1 软件生命周期性能测试贯穿于

15、软件生命周期。v 模型是软件生命周期中的一种。v 型开发模型是改良 传统的瀑布式开发模型,这种模型对质量管理是最有益的方式,它的重点在于进行确认与审 查的步骤。当产品在需求规划及设计规格阶段时,质量管理人员同时开始进行系统测试的计 划,等到产品进入了设计阶段的时候,质量管理测试人员同时将所应该进行的测试计划及内 容准备完成。当产品的程序编写阶段完成之后,接下来,测试人员就开始不同阶段的测试活 动,在每个测试阶段都会进行确认与审查的步骤。这个模型可以确保所开发的产品符合设计 规格,而且对软件的质量控制也较为完善,可是它也承袭了传统瀑布式的需求变更所造成的 后续影响的缺点4。v 模型如图 1 所示

16、。在集成测试和系统测试阶段,就需要对系统进行性 能测试。120图1 v 模型fig.1 v model1251303.2 性能测试流程性能测试流程如图 2 所示。(1)测试环境确认。确认测试环境、开发环境、工具以及资源。物理环境包括硬件, 软件和网络配置。对整个测试环境进行彻底的了解有利于更有效的设计和规划测试,并帮助 您在项目的早期认识到测试的挑战。(2)性能接受准则确认。确认响应时间,吞吐量和资源利用率等性能指标;(3)测试计划和设计。确定关键的场景,定义测试数据,并且建立标准来获得测试结 果,设计测试用例。(4)配置测试环境。准备测试环境,工具和必要的资源,使得它们在测试的时候正常 使用

17、。(5)测试执行。执行性能测试用例,获得测试数据和结果;(6)测试分析,报告,回归测试。分析测试数据,生成测试报告,找出系统的性能问 题,当问题得到解决后,再执行回归测试5。135图 2 性能测试流程fig.2 performance testing process1401453.3 性能测试实例下面以通信智能支撑管理系统的 gis 拓扑图显示为例,gis 拓扑图如图 3 所示,结合上 述性能测试流程说明性能测试的应用。图 3 gis 拓扑图fig.3 gis topology(1)测试环境确认。开发的通信智能支撑管理系统是 c/s(client/server)架构;采 取的 web star

18、t 发布方式;可用工具有 loadrunner, tptp 及 windows 自带的性能工具。(2)性能接受准则确认6。根据该系统特征及与客户沟通,性能指标如表 1 所示。150功能点性能指标表 1 性能指标tab.1 performance indicators最大响应时间(s) processor time (%) disk time(%)gis 拓扑图显示功能 6 70 10155(3)测试计划和设计。在选择性能测试工具的过程中,因为通信智能支撑管理系统采取的 web start 发布方式,loadrunner 不支持 java 网络加载协议,录制脚本无法回放,另外, 如果在 load

19、runner 中开发脚本代价太大,最终我们选择了性能测试工具 tptp。(4)配置测试环境。在开发环境下。其中开发工具为 eclipse,数据库为 oracle 10g; 将下载后的 tptp 组件成功导入开发环境下。(5)测试执行。用 tptp 分析执行 gis 拓扑图,得到的测试结果如表 2 所示:表 2 性能测试结果tab.2 result of performance testing函数名时间(s)clinint()32.38000getbean(java.lang.string)0.300000getgistopoviewdata(java.lang.string)4.300000a

20、ssertnotnull(java.lang.object)0.000066getparamater(java.lang.object)0.000004160165170175180185190195(6)测试分析。gis 拓扑图显示总共用的时间为 32.38s+0.3s+4.3s+0.000066s+0.000004s=36.98007s, 其中, 32.38s 是 spring 加载时间, 所以 gis 拓扑图显示单独执 行的时间为 36.98007s-32.38s=4.60007s。消耗时间最长的方法为:getgistopoviewdata(),执行时间为 4.3s.由此可知,满足性能接

21、受标准。同时测试人员要考虑被测模块是否可以优化,给开发人员提供参考。下面为对 gis 拓扑图显示功能的优化探讨。在 service 层里加上如下代码,从日志中看每一句要消耗的时 间。/*日志输出private loggoer log=inmslogger.getloginstance(); long starttime=system.currenttimeminis();/*要测试时间的语句long totalcounttime=system.currenttimeminis()-starttime; l(“getgistopoviewdata(ms):”+totalcounttime);测试得之:listlistviewto

温馨提示

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

最新文档

评论

0/150

提交评论