对性能测试的建议

上传人:ba****u6 文档编号:141559541 上传时间:2022-08-24 格式:DOCX 页数:4 大小:16.43KB
收藏 版权申诉 举报 下载
对性能测试的建议_第1页
第1页 / 共4页
对性能测试的建议_第2页
第2页 / 共4页
对性能测试的建议_第3页
第3页 / 共4页
资源描述:

《对性能测试的建议》由会员分享,可在线阅读,更多相关《对性能测试的建议(4页珍藏版)》请在装配图网上搜索。

1、对初学LoadRunner朋友的建意作者:wind摘要:随着Internet的普及与迅速发展,企业业务量的迅速加大,数据大集中成为一种趋势, IT系统承载的负荷越来越重,系统性能的好坏严重的影响了企业对外提供的服务质量从而 对IT系统的性能进行测试和调优引起企业的重视,进而性能测试工程师成为IT市场的”香悖 悖”,并且性能测试有着极高的技术挑战.于是吸引了大量的测试爱好者来学这方面的技术, 而一谈到性能测试很多人便会想到鼎鼎大名的LoadRunner这款优秀的性能测试工具,然而 到这里问题就产生了?关建字:LoadRunner性能测试网络基础编程语言数据库操作系统LoadRuner与性能测试的

2、关系:LoadRunner初学者的误点:把LoadRunner神化了.很多 初学LoadRunner的朋友认为掌握了使用LoadRunner这款性能测试工具,就能够做性能测试 了.常在网上看到好多人在学习怎么去使用这款优秀的性能测试工具,本来学习怎么去使用 LoadRunner这个工具没有错,却把LoadRunner神化了,”天真的”以为它什么都能做,以为学 会了 LoadRunner的使用就能做性能测试了 .尽管用了大量的时间学会了如何使用 LoadRunner录制脚本,如何进行关联,如何进行参数化,如何设置集合点等等?可到头来, 性能测试还是不会做.为什么?对于产生的性能报告不知道怎么去分

3、析?不知道如何利用 得到的分析报告分析出系统存在的瓶颈?不知道如何进行性能调优?像这些事光会使用 LoadRunner是做不到的?说白了 LoadRunner只是我们做性能测试的一个工具,它并不是万 能的,是死的,具体怎么做还得依靠人去操作与分析会使用LoadRunner的人,并不一定会 做性能测试,会做性能测试的人并不一定都会使用LoadRunner.LoadRunner只是一个性能测 试工具而已.我们应该意识到,测试工具只是性能测试中的一部分,仅是为达到性能测试目 的而采用的一种手段性能测试与系统性能的关系:高性能,高安全的系统,不是测试出来的,而是构架,设计, 编写出来的.当然在这里我并

4、不否认性能测试的重要性,甚至可以说没有经过性能测试的系 统,一定不会是优秀的系统,软件是人开发出来的,而人总是会出错的,所谓智者千虑,必 有一失.要想做好性能测试,在软件系统需求,设计,编写代码的这些阶段就应该进行性 能测试,而不仅仅是系统测试这个阶段才去做性能测试,性能测试应该贯穿于整个软件开发 周期中.对初学LoadRunner朋友的建意:常看到网上一些网友发贴子问,怎么对性能测试产生的 结果进行分析?测试系统时怎么去选择合适的协议?对于发这些贴子的人我想请问你?你 能够详细的说下HTTP协议吗? TCP建立连接和释放连接的过程是怎样进行的?什么是协 议?协议是用来做什么的?在OSI参考模

5、型中各层的作用?数据库中产生并发的冲突的原 因?不要太依赖于LoadRunner工具本身的学习,而去忽略计算机其它基础知识的学习,我 们更应该去掌握一门编程语言,良好的网络基础知识,计算机原理与操作系统知识,数据库 知识.这些是我们去学习怎么去使用LoadRunner前提与基础。.1为什么要掌握一门编程语言其一,大家在使用LoadRunner时常会遇到一些不能录制脚本的情况发生,或者需要录制一些 复杂的脚本,这时候我们就必须手动的开发脚本.其二LoadRunner虽然强大,易于使用,可是 它却属于商业软件,价格昂贵,并且代码不开源,我们无法了解LoadRunner具体的实现细节,甚 至我们会怀

6、疑LoadRunner收集的性能数据准确吗?它有是如何实现的等等,而这些我们通过 LoadRunner的帮助文档无法得知.性能测试工具并不只有LoadRunner,做性能测试还有许多 优秀的性能测试工具可以选择,像JMeter,Curl-Loader等等这些非常优秀的开源工具,在全能 上虽然并不上LoadRunner,但在某些方面却比LoadRunner还要强大.例如Curl-Loader这个工 具,它虽然支持的协议不多,但是对于http协议它最高能产生10万的并发用户,这是 LoadRunner远远所不及的.并且这些工具代码是公开的,我们能够从这些代码中去分析具体 实现的细节,并且还可以自已

7、编写代码,增强软件的功能,这也是成为性能测试高手的一条途 径.LoadRunner好比我们的Windows操作系统,易于使用,功能强大,代码封闭,论全能比Linux 要强大.我们的开源性能测试工具好比Linux操作系统代码开源,不易于使用,但很多方面比我 们的Windows要强大.也许这个时候有人会问对于初学者学哪门语言最好最有前途 C,C+,VB,JAVA,C#?其实每一种语言能够生存下来,自有其生存的道理,每一种语言都有自 已优势和缺点,并且编程语言具有相通信,学好了一门,再去学另外的编程语言,非常快就能上 手.对于初学者我建意学习C语言,理由有很多,例如很多优秀的开源性能测试工具就是用C

8、 语言开发的.当然不管选择什么编程语言,或者数据库,或者操作系统,我们不要去想学哪门 最好,学哪方面最有前途.我们更应该结合自身的情况,选择最合适的,而不是选择最好的.2为什么要掌握计算机原理和操作系统知识论坛上常会看到这些问题? LoadRunner中线程与进程的关系?在什么时候用到它们,怎 么区别用线程还是进程呢? LoadRunner录制产生了乱码怎么解决?怎么去发现内存泄漏? 对那些发贴问这些问题的朋友,我依然想请问你你知道进程和线程的概念吗?知道进程有几 种状态吗?知道进程间的通信是怎么进行的吗?死锁,进程与线程的区别这些概念你明白 吗?如果你连内存的概念,内存的作用,内存泄露的概念

9、都搞不清楚,你怎么去发现内存泄露? 如果这些你都不知道,自然就不知道怎么去做性能测试分析? 一些网友录制脚本常常会产生 一些莫名奇妙的错误?还震震有词的说这是LoadRunner的原因.其实要说到底要解决这些问 题就必需得有良好的计算机原理和操作系统知识.弄清了进程和线程的区别,你自然就明白了 使用进程资源使用高,但安全性要强于线程,线程资源利用率少,使用线程能在一个负载生成 器上运行更多的Vuser,但可能存在安全问题.LoadRunner录制产生了乱码怎么解决?为什么 会产生乱码,你知道什么是字符集吗?什么是编码吗?字符串在我们内存中有是如何存放 的? ASCII编码,ANSI编码,UNI

10、CODE编码它们的区别是什么?这些都是操作系统的基础基 础.掌握好了这些你自然明白LoadRunner中产生乱码的原因.当然计算机原理和操作系统的 基础知识还有很多得掌握的知识.像操作系统的体系架构、操作系统的重要基础概念,内存管 理、存储/文件系统、驱动/硬件的管理.要做好性能测试计算机原理和操作系统知识必不可少.3为什么要有良好的网络基础经常在51testing论坛中看到很多人发贴子.像LoadRuner中为什么要进行关联?,LoadRunner 测试系统时如何选择协议? LoadRunner中的如何进行IP欺骗?等等.这些问题随便一搜就能 发现大量的贴子,其实说到底这些问题和LoadRu

11、nner的关系并不是很大,要去解决这些问题 并不在于你对LoadRunner这个工具使用是否熟练,而在于我们网络基础知识是否扎实.例如 第一个问题LoadRunner中为什么要进行关联?相信很多朋友都知道HTTP协议知道它是超 文本传输协议,但是对于一些新手往往不能够详细的说出HTTP具体的内容,像HTTP工作的 原理,HTTP协议为什么要使用基于TCP的协议而不使用UDP的协议,HTTP工作在OSI参考 模型的哪一层?在HTTP协议上数据是怎么传输的等等.而只有当我们明白了这一切,自然而 然就会明白为什么要使用关联,到最后你会发现这些问题其实根LoadRunner关系并不是很 大.HTTP协

12、议本质上是无状态的;对页面的每个请求都将被视为新请求而且默认情况下,来 自一个请求的信息对下一个请求不可用.在传统的Web编程中,这通常意味着在每一次往返 行程中,与该页及该页上的控件相关联的所有信息都会丢失.例如,如果用户将信息输入到文 本框,该信息将在从浏览器或客户端设备到服务器的往返行程中丢失,为了使用浏览网页,页 与页是相互联系不去丢失这些信息,于是了就从现了 Cookie,Session,查询字符串等等保持状 态的技术.什么是Cookie?什么是Session? Cookie和Session有是怎么工作的?当我们明白 了这些,很多的问题就自然而然的明白了,像这些都是基础的知识和Loa

13、dRunner关系大吗? 不大.Cookie是一些少量的数据,这些数据存储在客户端文件系统的文本文件中,或者存储在 客户端浏览器会话的内存中.Cookie包含特定于站点的信息(像用户名密码以及我们在网站 一些个性化的设置等等),这些信息是随页输出一起由服务器发送到客户端的.如果浏览器使 用的是cookie,那么所有的数据都保存在浏览器端,比如我们登录以后,服务器设置了 cookie用 户名,那么当你再次请求服务器的时候,浏览器会将用户名一块发送给服务器,这些变量有一 定的特殊标记.服务器会解释为cookie变量,所以只要不关闭浏览器,那么cookie变量一直是 有效的,所以能够保证长时间不掉线

14、.如果设置了的有效时间,那么它会将cookie保存在客户 端的硬盘上,下次再访问该网站的时候浏览器先检查有没有 cookie,如果有的话,就读取该 cookie,然后发送给服务器.这些是Cookie的工作过程,常看到论坛上一些朋友发贴子问使用 LoadRunner时录制到了一些Cookie的信息,它是用来做什么的,看起来很烦可不可以把它删 除掉?明白了这些细节的知识,你自然能明白那个Cookie的信息能不能删除掉.如果web服 务器端使用的是session,那么所有的数据都保存在服务器上,客户端每次请求服务器的时候会 发送当前会话的Sessionld,服务器根据当前Sessionld唯一地标识

15、在服务器上包含会话数据的 浏览器,以确定用户是否登录或具有某种权限.不同的用户发送请求Web服务器会随机发送 一个唯一的SessionlD.而我们使用LoadRunner录制时它会把我们SessionlD写死,所以导致出 错.这时候就得使用关联了,这样不仅明白了 LoadRunner怎样使用关联,而且还明白了为什么 要使用关联?对于LoadRunner测试系统时如何选择协议?这个问题也是网络论讨的比较多 的问题.要解决这个问题同样得依靠我们的扎实的网络基础,而不是对LoadRunner使用的熟 练程度,首先我们得了解LoadRunner录制时的工作原理了 ,LoadRunner的录制和QTP不

16、一样, 它不关心你的对象识别什么的,不关心你的什么界面之类的,不关心你使用什么语言编写 的,LoadRunner有一个Agent进程,来专门监控客户端和服务器之间的通信,然后用自己的函 数进行录制.LoadRunner录制的时候关心的是通信包,是客户端和服务器之间的数据包.说到 这里,大家就比较清楚了,为什么有的时候不能录制呢?因为,协议不认识,导致LoadRunner截 获的数据包不能解析,所以录制下来是空的.所以我们得熟悉什么是协议,熟悉OSI参考模 型,OSI参考模型中各层的作用,TCP协议栈各层的作用,熟悉TCP,UDP,ICMP等等协议.当我们 明白了这些网络的基础知识后我们自然会明

17、白应该如何去选择协议另外关于LoadRunner中 的如何进行IP欺骗?要解决这个问题同样得有良好的网络基础知识其实当我们理解了 IP 地址的格式,IP地址的分类,子网掩码的概念,以及知道怎么去进行非标准子网的划分方法,掌 握了这些原理的东西,那么具体怎么在LoadRunner中如何进行IP欺骗,就非常简单了.当然 网络基础知识并不只是上面的而已,还包括路由器,交换机,加密技术等等这些基础的网络知 识,这些远远比我们去学习怎么去使用LoadRunner更重要.4为什么要掌握数据库知识数据库的重要性我想是不言而喻的,性能测试产生的一个非常大的原因是因为数据大集 中的趋势,测试从某种意义来讲就是对

18、数据测试,而我们企业的核心数据是放在数据库中的. 现在大型的WEB应用程序,都采用多层结构,像典型三层,用户界面层,数据逻辑层,数据层.而 数据层,而数据层对我们整个WEB应用程序的性能是非常大的,对数据库的基础知识不懂,我 们怎么去进行性能测试分析?怎么知道确定性能产生的瓶颈是否是数据库的原因,如何对系 统进行调优?例如数据库模型设计不合理,一条坏的SQL语句就能影响到整个WEB应用程 序的性能,所以熟悉SQL语句,建表,索引,存储过程,事务,触发器,并发等这些基础知识是必需 得掌握的.路漫漫其修远兮,吾将上下而求索:性能测试难点不在于Loadrunner工具本身,难在对整个系 统的全局把握,而对全局的把握你就必需得有丰富的知识面.并不是学好了 LoadRunner的使 用就能做性能测试.目前,国内性能测试领域正处于起步阶段,要做好性能测试还需学习更多 的知识,技术性和非技术.性能测试这条路充满着挑战,也充满着机遇.但正如鲁迅先生所说这 世上本来没有路,走的人多了,也就成了路.最后祝愿喜爱性能测试的爱好这条道路上能够不 鸣则已一鸣惊人,不飞则已,一飞冲天.

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!