性能测试方案要做好性能测试,该掌握些什么?

性能测试方案  时间:2021-01-20  阅读:()

如何进行性能测试与分析

“为什么我上线系统的性能和性能测试的结果相差很大呢?”这是一些用户会经常碰到的问题。

当然产生这个问题的原因很多,下面我用一个很典型的例子来说明一下。

一个用户登录界面,要求用户输入用户名、密码点击登录,登录系统。

程序的处理流程如下:根据输入的用户名、密码生成SQL语句,select roleID from usertable where username='用户名' and password='密码',把这条语句发给ORACLE数据库,从数据库中查询数据,如果查询的roleID不为空则是合法用户允许登录,否则不允许登录系统。

这是一个非常简单的系统。

性能测试人员用LOADRUNNER录制脚本,然后用逐步加压的方式来运行脚本,TPS、ORACLE的命中率、资源占用都很理想。

性能测试人员就陷入了一种盲目的乐观情绪中,就认为系统性能没有问题,结果在实际运行中系统性能与性能测试中的性能相差很大,为什么会出现这种情况呢,下面我们来分析一下:首先我们来了解一下ORACLE的运行机制:从客户端发送一条SQL语句到ORACLE服务端,ORACLE要对SQL语句进行解析、执行、返回结果。

并且ORACLE有一个LRU(最近最常使用的语句)机制,把最近最常使用的SQL语句保存到共享内存SGA中的libary cache中,下一次再有这样的请求它就不解析了,直接从共享内存中使用。

假如我们使用的SQL语句是select roleID from usertable where username='AAA' and password='123',在我们加压的时候它就解析一次或很少的几次,其他的请求就会从共享内存中取得,并且返回的结果也会保存到BUFFER CACHE中,这样系统的测试结果当然就是很好的。

但在实际工作中,用户名和密码是各种各样的,而ORACLE解析的条件又要求非常苛刻,SQL语句有一点不同它就认为是不同的SQL语句就要重新进行解析,而解析非常耗费系统资源,所以在实际运行中系统的性能和性能测试的结果相差很大。

通过这个例子我们可以看出我们没有把真正的压力压到点上,也就是进行的不是有效性能测试。

如何进行有效性能测试呢?一定要仔细地分析你要进行测试系统的架构、技术体系,LOADRUNNER只是一个加压工具,它对 ORACLE的监控也非常的不好,不要盲目的相信LOADRUNNER.一定要充分重视测试的调研和设计工作,如果能在测试前拿到系统开发的各种文档是最好的,如果没有也要充分调研业务人员、开发人员、系统运维人员,了解系统的技术架构、业务组成、业务流程、业务频度、数据量等要素,这样才能进行有效性能测试

测试用例设计方法有多少

这是我以前收集的关于纸杯的测试用例,个人觉得不错,有兴趣的可以看一下:一个纸杯的测试用例:先看杯子能不能放水,放热水会不会坏,能放多少,会不会漏,放桌子上会不会倒,杯子是圆口的还是方口的,形状对不对,什么颜色的,用来喝水会不会搁嘴,杯子是不是纸做的,杯子内壁是什么材料的。































功能测试:测试纸杯是否可以盛液体,例如水。

性能测试:测试纸杯的纸是否够厚而不易变形。

压力测试(负载测试):液体盛满纸杯是否会坏。

可恢复性测试:装入液体后将液体倒出后,纸杯是否可以恢复原装强度测试:纸杯盛一段时间液体后是否会软化损坏。

外观测试:纸杯外形是否美观,图案是否漂亮。

易用性测试:纸杯使用时手感是否好,口感是否好,会不会刺嘴。

安全性测试:盛满水拿起杯子后,杯子是否会变形将液体洒到用户身上。

杯子的纸张厚度的均匀性,纸张的要求,韧性,硬度,耐酸性,耐碱性,接受各种液体低气压中,使用情况高气压中,使用情况防潮性,承重力,运载的损耗性温度测试,空气的最大温度,最小温度液体的最大温度,最小温度外形杯底和杯口水平于地面不招虫,卫生角度,安全性,无毒染色性,保鲜性象KFC的杯子里面有腊的。

怎样为性能测试设计好的测试用例

由于性能测试与功能测试有很大的区别,所以讨论出的结果可能与预先的设想有一定的区别。

  性能测试的目的:   为了验证系统是否达到用户提出的性能指标,同时发现系统中存在的性能瓶颈,起到优化系统的目的。

  性能测试指标的来源:   用户对各项指标提出的明确需求;如果用户没有提出性能指标则根据用户需求、测试设计人员的经验来设计各项测试指标。

(需求+经验)   主要的性能指标:   服务器的各项指标(CPU、内存占用率等)、后台数据库的各项指标、网络流量、响应时间。

  BUG观点:   1、性能测试就象人在无风情况下跑步(正常情况下的性能指标);   2、压力测试就象人在微风中跑步(在正常的基础上加大多少百分比压力的性能指标);   3、负载测试就象人在强风中跑步(不断加压,直到系统崩溃)。

  HTTP观点:   1、 负载测试是正常情况下持续的加压;   2、 压力测试是直接加压达到一个极限值。

  大家统一的观点:   性能测试、压力测试、负载测试密不可分,可统称为性能测试。

  性能测试要点:   1、 性能测试是在功能测试完成之后进行。

  2、 性能测试计划、方案一般与测试用例统一在一个文档里。

  3、 测试环境应尽量与用户环境保持一致。

  4、 性能测试一般使用测试工具和测试人员编制测试脚本来完成,性能测试的环境应单独运行尽量避免与其他软件同时使用。

  5、 性能测试的重点在于前期数据的设计与后期数据的分析。

  6、 性能测试的用例主要涉及到整个系统架构的问题,所以测试用例一旦生成,改动一般不大,所以做性能测试的重复使用率一般比较高。

(说明:当系统中出现的某个功能点需要修改,它一般只会影响到功能测试的设计用例,而对于性能测试,很少影响到性能测试的设计用例。

)

要做好性能测试,该掌握些什么?

这类问题之前也被问到很多次了,所以这次干脆整理一下,发个主题供同行们参考。

如果需要补充,也欢迎大家留言一起讨论。

如果想真的做好性能测试,需要学习的东西还是比较多的。

简单列一下吧。

1. 精通性能测试的基本概念,过程,方法论,了解性能工程; 3. 扎实的计算机专业基础知识,包括计算机组成原理、操作系统、数据库原理、计算机网络原理; 4. 熟悉至少1个常用的数据库产品,例如SQL Server或者 Oracle,能进行一般的数据库管理操作,熟悉SQL脚本的使用,熟悉常用的数据调优工具和常用的counter; 5. 熟悉至少一个操作系统的原理,Windows或者Linux都可以,熟悉操作系统的体系架构、操作系统的重要基础概念,以及内存管理、存储/文件系统、驱动/硬件的管理、网络协议的实现及构成、性能的监控方法和原理,熟悉常用的counter; 6. 熟悉至少一个web server 产品,例如apache,了解一般的配置和常用的counter; 7. 熟悉至少一个应用服务器产品,例如tomcat,了解一般的配置,熟悉常用的服务器性能监控方法和原理,熟悉常用的counter; 8. 至少熟悉TCP/IP协议,熟悉HTTP协议,至少见过并了解三层、四层交换或者路由器的使用和配置。

了解常用的与网络性能相关的counter; 9. 了解一般的大型企业应用的部署架构和应用架构; 10. 了解知名大型web应用、高并发量、高流量、实时响应要求高的超大规模网站的架构和优化历程; 11. 熟悉统计学的基础知识、常用分析方法以及实验设计方法,了解数学建模相关的知识; 12. 熟悉专属行业的业务知识和用户场景,例如电信行业的OSS系统所涉及的业务知识和用户场景,证券交易系统所涉及的业务知识和用户场景; 13. 大量的实际性能测试及优化经验; 14. 积极的参与到各类圈子、社团的讨论和交流、分享中。

暂时先想到了这么多,有兴趣的朋友可以一起讨论一下,相信每个人都有自己不同的经历和感想,可以跟其他人分享一下,提供参考。

另外,我之前也整理发布过不少性能测试方面的资料,从入门级的文章到 升级的必读都有一些,有兴趣可以参考。

创梦网络-四川一手资源高防大带宽云服务器,物理机租用,机柜资源,自建防火墙,雅安最高单机700G防护,四川联通1G大带宽8.3W/年,无视UDP攻击,免费防CC

? ? ? ?创梦网络怎么样,创梦网络公司位于四川省达州市,属于四川本地企业,资质齐全,IDC/ISP均有,从创梦网络这边租的服务器均可以****,属于一手资源,高防机柜、大带宽、高防IP业务,另外创梦网络近期还会上线四川联通大带宽,四川联通高防IP,一手整CIP段,四川电信,联通高防机柜,CN2专线相关业务。成都优化线路,机柜租用、服务器云服务器租用,适合建站做游戏,不须要在套CDN,全国访问快...

香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等VPS,全球独立服务器99元起步 湘南科技

全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技郴州市湘南科技有限公司官方网址:www.xiangnankeji.cn产品内容:全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技VPS价格表:独立服...

vpsdime:夏日促销活动,美国达拉斯VPS,2G内存/2核/20gSSD/1T流量,$20/年

vpsdime怎么样?vpsdime是2013年注册的国外VPS主机商,实际上他还有一系列的其他域名站点如Winity.io, Backupsy,Cloudive, Virtora等等,母公司“Nodisto IT”相对来说还是很靠谱了的商家。VPSDime主要提供各种高配低价VPS套餐,其中Linux VPS和存储VPS基于OpenVZ架构,高级VPS基于KVM。VPSDime在上个季度的Low...

性能测试方案为你推荐
51自学网站推荐一个好一点的自学网站,关于网站建设的。简体翻译成繁体简体字怎么换成繁体。。?人人时光机求 《小叮当》的日语歌词。最好有片假名的吴晓波频道买粉五大知识付费平台有哪些?公章制作制作公章尺寸标准大小,字体,字号?显卡温度多少正常电脑显卡温度多少正常?数码资源网手机练习打字的软件硬盘人500G的硬盘容量是多少啊?xv播放器下载迅雷看看下载的XV格式的电影用什么播放器可以播放?(没有互联网的情况下)畅想中国未来的中国是什么样子的
未注册域名查询 php空间租用 国内vps 上海vps 美国加州vps lnmp a2hosting simcentric dreamhost 腾讯云数据库 标准机柜尺寸 免费个人网站申请 中国电信测速112 100m独享 美国在线代理服务器 免费申请个人网站 太原网通测速平台 沈阳主机托管 国外在线代理服务器 免费php空间 更多