性能测试笔记讲解_第1页
性能测试笔记讲解_第2页
性能测试笔记讲解_第3页
性能测试笔记讲解_第4页
性能测试笔记讲解_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

1、2749555640123456789性能测试笔记=1)1. 什么是性能测试 软件的功能:对一个软件基本功能能够实现,比如:银行卡能够正常转账成功(用户数 软件的性能:要求软件性能更好,一般关注 多用户 的使用情况,软件的响应时间。 响应时间例子:登录一个软件,点击“登录”按钮时, 多久 能够显示成功登录的页面。性能问题 :1 每秒平均浏览量: 2200 次 /秒浏览量( PV, Page View ):即页面访问量或点击量,用户每次刷新即被计算一次 购票申请: 20 万张 /秒以上自身设计浏览量 100 万次 /小时 浏览量 280 次 /秒2. 响应时间的 358 原则:3 秒之内,客户比

2、较满意5 秒之内,客户可以接受8 秒之内,客户可以忍受 大于 8 秒,无法忍受3. 一般进行性能测试之前,要对系统尤其是数据库进行备份负载测试是一种 正常 的测试(在正常测试的指标下测出最大的负载量) 指标或者某种资源达到某种指标,比如响应时间达到多少,比如CPU 负载 100% 等不可接受 ,发现应用程序性能下降的拐压力测试和负载测试二者的区别: 负载测试强调系统在 正常工作情况下 的性能指标 压力测试的目的是发现在什么条件下系统的性能变得 点影响系统性能的主要因素(1)硬件: CPU,内存,硬盘,网卡及其他网络设备【最好解决】(2)操作系统(3)网络(4)中间件(又叫应用服务器) , we

3、b 服务器(5)数据库服务器(6)客户端(7)变成语言,程序实现方式,算法【最难解决】客户端= 服务端( Web 服务器) = 应用服务器 =数据库服务器性能测试主要关心两个部分: web 服务器和应用服务器。 客户端向服务器发送请求 服务器端向客户端返回应答(响应 response)性能测试的常用术语:并发( Concurrency ):所有用户在 同一时刻(一个时间点,可以精确到毫秒级)做同一件事情或操作,一般针对同一类型的业务 例如:在信用卡审批业务中,一定数目的用户在同一时刻对已经完成的审批业务进行提交 做并发的测试就称为“并发测试” 。【发测试不包含睡眠时间】在线( OnLine )

4、:多用户在 一段时间 内对系统执行操作 【包含睡眠时间】并发测试与在线测试对系统的压力不同, 一般来讲 并发测试的压力和在线测试的压力的比值 是 10:1 。例如: 200 用户并发测试相当于 2000 用户在线测试。并发测试一定是多用户。请求响应时间指从客户端 发送一个请求开始 计时,到客户端 接到 从服务器端 返回的响应结果计时结束 。 在一些工具中, 请求响应时间通常被称为 TTLB 即“Time to Last Byte ”,意思是从开始发送 第一个请求开始,到客户端收到 最后一个字节的响应 为止所 耗费的时间 。 请求响应时间的单位一般为“秒”或者“毫秒”再复杂的响应时间都可以分为

5、3段: 请求的响应时间 =客户端的响应时间 +网络的响应时间 +服务器的响应时间一般测试放在内网里, 带宽, 网络不会成为瓶颈。 只用分析客户端的响应问题和服务器的响 应问题。一般客户端的响应很少有问题,一般只分析服务器响应问题即可。事务响应时间:用户完成某个具体事务(如跨行取款事务)所需要的时间。事务可能包含多个请求。比如点击“登录”按钮,到登录进页面。事务的响应时间和请求响应时间的区别? 一个事务包含一个或多个请求(一般,一个请求指的是一个 http 请求)。点击率: 每秒钟用户向 web 服务器提交的 http 请求数。-点击率越大,对服务器的压力也越大-注意:点击不是指鼠标的一次“单击

6、”操作。因为在一次“单击”操作中,客户端可能向 服务器发出多个 HTTP 请求(比如跳转页面需要更新展示图片等) 。点击量的计算:假如单击“登录”按钮,请求一个页面登录后的欢迎页面中包含 3 个图片, 则每个图片都需要重新发送一个 http 请求, 所以, 单击鼠标一次产生的 http 请求总数为 4=1 (登录请求) +3(图片请求)点击率 =点击量 /时间吞吐量:用户在任意给定一秒 从服务器端 获得的 全部数据量 ,单位是字节 吞吐量 /传输时间 =吞吐率吞吐率很重要,反应了服务器的处理速度和性能,也是衡量网络性能的重要指标。TPS(事务数 /秒)CPU,内存,磁盘及网络等在性能测试过程中

7、,要监控服务器系统的各项资源情况,比如: 情况。吞吐率和点击率的区别: 吞吐率:指服务器每秒处理的数据量。反应了服务器的处理能力, 吞吐率越大,服务器处理 能力越强。点击率:客户端每秒向服务器发送请求的数量。反应了服务器的压力, 点击率越大,服务器 的压力越大吞吐率受点击率影响,也受服务器性能的限制。完美的吞吐率是:在带宽充足的情况下,吞吐率随着点击率的增加而增加。资源利用率指对不同的资源系统的使用程度,包括 web 服务器,操作系统,数据库服务器,网络,硬 件,是测试和分析瓶颈的主要参数-如:服务器 cpu 利用率,磁盘利用率等 它是分析系统性能指标进而改善性能的主要依据,因此是 web 性

8、能测试工作的重点。性能测试的策略(即方法) :重点测试方法:基准测试,并发测试,综合场景测试,疲劳强 度测试,极限测试,递增测试基准测试:一般做的是单用户测试( Benchmark Testing )指测试环境确定以后,对业务模型中涉及的重要业务做单独的测试。目的是获取单用户执行时的各项性能指标,为多用户并发和综合场景等性能测试分析提 供参考依据。并发测试 :就是多用户的并发测试某个测试点。 并发测试对系统要求比较严格, 因为要模拟 一个瞬间压力。并且要 忽略系统的睡眠时间 (思考时间) 。递增测试 :A)指每隔一定时间段 (如 5 秒, 10秒)加载不同数目 的虚拟用户执行测试点操作,对测试

9、 点进行递增用户压力加载测试。 原因:所有用户 (5000)共同登陆可能会导致系统压力过大, 进而影响到后面关心的测试点( buy)的性能,导致关心的测试点结果不准确,所以采取递 增,分散一下前面的压力,使系统关心的测试点能够正常的测试。 (这里是递增着登陆) B)测试一个测试点(如:购票) ,先测试单用户,再测试 20 用户,40 用户等情况,有利于 分析,也称为递增测试。 (这里是递增着全套测试)综合场景测试【重难点】 :通过对系统结构和功能的分析, 对用户的分布和使用频率的分析, 来构造系统综合场景的测 试模型,模拟不同用户执行不同操作。如 10% 的用户执行浏览首页, 50% 的用户执

10、行查询订单, 40% 的用户执行订购机票, 最大限 度地模拟系统的真实场景 ,使用户预知系统投入使用后的性能水平。没特别指明的话,一般都是指 在线 的。Login 不适合放在综合场景中运行。综合场景:号称能最真实的模拟实际的生产环境。 如测试时间为 50 分钟,则综合场景中的 每个脚本都是在 循环执行 。所以综合场景中不宜加入 login 测试点,因为不能真实模拟实际 的生产环境。疲劳强度测试: 是一种特殊的强度测试(压力测试) 。指在一定的压力下(如:相同的用户 数)长时间(疲劳)对系统进行测试,并监控服务器的各项资源情况。如: 7x24 小时,24 小 时(如移动电信银行的服务器) 。测试

11、其服务器的稳定性: 指长时间的运行过程中, 系统的各项资源及时间等指标表现是否正 常。内存泄露: 系统的服务器内存都被占用,而没有释放。导致系统没有可用内存。内存泄露测试:通过 LR 监控时查看具体的几项指标,或者通过其它的专门内存泄露检测工具测试。数据容量测试: 查看系统服务器能否实现大数量下使用情况, 系统的各项资源表现情况。 如:200G,或者 3 个 T 。极限测试: 也叫“摸高测试” ,测试系统的极限,如系统最大能承受的用户数,吞吐量等。虚拟用户: Virtual Users 控制台: Controller 分析工具: AnalysisLoadRunner 的三大组件:虚拟用户脚本生

12、成器( Virtual User Generator )-Creat/Edit Scripts 【 Generator :生成器】 压力调度控制台( Controller ) -Run Load Tests 压力结果分析器( Analysis) -Analyze Test ResultsQTP(功能自动化的工具)和 LR (性能测试工具)的区别:QTP 关心的是功能方面, LR 关心的是性能方面。QTP 关心界面的控件属性(对象,对象的属性,属性值等)等, LR 关心的是客户端和服务 器之间往来的数据包。LR 的工作原理:,形成脚本,回放时, LR录制时, LR 记录客户端和服务器二者之间的所

13、有对话(数据包) 模拟真实的客户端,向服务器发送请求。并验证服务器的响应。LR 是怎么记录下数据包的: (1)基于局域网的广播原理。 【这种用的很少】 ( 2)基于一种嗅探原理 sniffer 。【目前在用的方式】虚拟用户脚本生成器:是用来生成脚本的LR 的常用术语:虚拟用户( Virtual User 【简称 VU 】):在场景中, loadRUnner 用 VU 代替实际用户。 Vuser 模拟实际用户执行操作。一个场景可以包含几十,几百甚至几千个Vuser。( 每个虚拟用户是一个进程或者线程,一 般用的是线程 )Vuser 脚本( Virtual User Script ):用于描述 V

14、U 在场景中执行的操作。 (记录的客户端发送 的请求。) 事物( Transaction):为度量服务器的性能,需要定义事务。事务表示要度量的最终用户业 务流程或操作。为何要定义事务:因为脚本中将关心的操作(如购票)定义为一个事务,则结果报告中 (analysis)就会返回事务的响应时间。不关心的操作就不需要定义成事务。场景( Scenario):场景是一种文件, 用于根据性能要求定义在每一个测试回话运行期间发生 的事件。模拟真实环境中,用户运行的情况。 【将脚本放到控制台去运行(包括设置各种参 数)】综合场景: 将不同的脚本,至少 3 个放到控制台去共同运行一段时间。具体定义见PPT。测试注

15、意: 设置 IE(清楚浏览器缓存) :进入工具 Internet 选项 常规 设置 每次访问此页面时 检查LR 中修改参数:进入 Controller Run Time Setting Tnternet Protocol Proxy ,选择 No Proxy 。Jojo /beanLR 基本测试流程: 制定性能测试计划(部分) 创建测试脚本 编译,运行测试脚本【 VUG 】 创建场景 运行,监控场景,收集数据【 Con 控制台】 生成测试报告,分析测试结果【 analysis】is制定性能测试计划(部 T 分)-测试登录模块在8个用户的情况下系统的性能状况要求:_用户数:8入.厂 Lo tf卜

16、-用户加载方式:每2秒钟加载1人-运行时间:所有用户运行誨本一一登录用户名:testl-密码:testl。准备工作由于LoadRunner整个测试过程会产生很多 文件或文件夹,所以对这些文件(夹)的管理 很重要.可以按照下图创建文件夹E33EF1 IISB2015-23ll:2015-23!1:3怖is敷件文朕201冷23 n:2013*5*2311:J最好用英文命名Start RecordingApplication type :Internet ApplicationsMicrosoft Internet ExplorerIhttp:/127.0.0. l :1080/WebTours/C

17、:Program FilesHPLoadRuwierbinOK | Cancel IProgram to record:URL Address:Working directory:Record into Action: | ActionV Record the application startupOptions.矽 HP Virtual User Generator 一 nonae9 一 eb (HTTP/HTKL):File Edit View Insert Vuser Actions Tools Window HelpMBOHBEOHB*noname9-Web (HTTP/HTML);聿

18、曰鬥;Start Recordvu:er_imtAc:ion vu:er end#ifndef _GLOBALS_H#define _GLOBALS_Hslude Files jde lrun.hinclude web.apihinclude lrw_custom_body. h / Global Variables ffendif / GLOBALS HStart Page noname8 vuserjnit 登陆Actionvuer示glcbals.h退岀关心什么就把什 中Web (HTTP/HTML) noname9 - Web (HTTP/HTML)_#ifndef .GLOBALS.

19、H#define GLOBALS HMMI/I/ Include Files#include :lrun.h “#include #web_api. 祥include lrw_custojn_body. h夂枚在acon中,如果只关心登录,贝I把登录放在action 17/I/ Global Variables#endif / _GLOBALS_H小技巧:弹出结果笏 HP Virtual User Generator 一 llogin 一 Web (HTTP/HTML)日1VLser_init Action f VLse(_end globals.h:File EditView Insert

20、Vuser Actions Tools Window HelpI Start Page TasksOutput WindowActionsData GridsSnapshotShow All ThumbnailsBuffer Navigatorttp:/127. 0. 0.1:1080/VebToursP xe=0x十an十Tvna二十二艾十/h十ml I View SnapshotSelect Iteration.cansaction(#llogin);Test Results.|叵运Script ViewTree ViewiRefresh TreeJToolbars:Status BarE

21、nable Actions ReorderAnimated Runme(30);form(login, pl, iot=t2. inf,A,#Value=jojo ENDITE Value=bean ENDITE Vslue=33, ENDITEM, Value=8, ENDITEM,lr_end_transaction(llogin, LR_AUTO);return 0;1llogin Results 昼豐=乙 总结 槪夢Test: lloginResults name: resultlTime Zone:中国标准时间Run started: 2014-2-23 12:59:50Run en

22、ded: 2014-2-23 -12:59:52Status状态Times3Failed0Warningsu:FileView | Tools HelpB Test Results ToolbarStatus Bar+Result Details由Screen RecorderSystem CountersFilters.Ctrl+TIExpand All展开所有Collapse All2Jump to Step in QuickTestCtrl+JWindow Themellogin 一 Test Resultsinlame: resultlle:中国标准时间ed: 2014-2-23-12

23、:59:50ad: 2014-2-23-12:59:52Results SummanIteration #Act!on0web_url(WebTours URL=http:/127.0.0.l:1080/VebTours/ Resource=0,RecContentType=text/htmKJ Referer=A,Snapshot=tl inf,Mod严HTML,LAST);lstart.transactionCllogin);事务开始lr_think.time(30);思考时间30秒web.submit_form (login pl,#Snapshot=t2. inf,提交表单ITEMDA

24、TA,Name二usenwne, Value=jojo, ENDITEM, Name=password, Valueean, ENDITEM, Najne=login.Value=33, ENDITEM,Name=login.阳lue=8, ENDITEM,LAST);lr_end_transactionClloginx,J LR_AUTO);return 0;事务结束Her Scenariolx:Select Scenario Type 场旦 Manual Scenario : Manage your load 厂 Use the Percentage Mode to dMnbute the

25、 Vusers among the $cript$numbet of virtual u$ to run*使用百分比区分用户,大量用户才需要用 ( Goal-Ofiented Scenario 甘工Allow LoadRumw Conb3fe toSelect the you wodd like to use in your scenarioAvaiable Saiph吉 IloninV Show at startupOKHelpGroup NameloginScript Pathb:LR01ScriptsloginQuantityEdit Action Scenario Sch8localh

26、osiSchedule Name:Schedule by:Run Mode:Global ScheduleActionInitialize each Vuser just before it runsInitialize Start VusersDurationRun until conpletion210 00 00.00Scenario ScheduleGroup NarreScnpt PathQuanbtyb:LRO1 ScnpStart Page | llogin - Web (HTTP/HTML) noname 10 W丸:HTTP/HTML)编译weburl(WebTours UR

27、L二http:/127. 0. 0. l:1080/VebTours/Resource=0#,RecContentType=text/htmlA, Referer=A,Snapshot二tl. inf, Modp=HTMl/.注意: refresh 中有两个选择,看情况使用。注意: refresh 中有两个选择,看情况使用。脚本和控制台的 run-time setting 都设置的话,哪个优先级高? 控制台的优先级高! 脚本中的 run-time setting 何时使用? 运行脚本的时候使用并发测试有两个步骤:1) 脚本中加并发点(即集合点)2) 在控制台设置: 5 个虚拟用户( VU ),

28、可以设置递增(不设也可) ,设置并发策略。閑 HP LoadRunner Controller 一 Scenario2 一 RunFile View |aQScenaricliroup Nam1D(|llognScenarioJoni tors Results Di agnostics Tools Help Start.StopStop Now ResetF5Convert Scenario to the Percentage ModeShow Convert Scenario Mode WarningLoad GeneratorsSave Load Generator List as Def

29、aultLoad Default Load Generator ListRendezvous.Available IB Runtime (汐 RStoP Vusers- Runni| L User Error SVuser:并发策略Enable IP Spoofer Summary Information Execution Notes.-T lansactiui i uiapi 2Tans Response Time Ten s/Sec (Passed) Trans/Sec (FailedzStopped) r nColorrorGradual Exiting0ling Vusers who

30、le scenariElapsed Timeoer Second - whole scenariElapsed Time (Hour: Min:Sec)Run-time Setting - 忽略休息时间,因为需要瞬间压力。曾eb_submit_forjn(login pl, cSnapshot=t2. inf, ITEMDATA,Name=username, zName=password: zName=login. x, zName=login. y, LAST);lr_end_transaction(A1login*,LRreturn 0;参数:Name设置为参数Log0 Correlati

31、on Resultsstarted at : 2014-02-23 17:55:0r.init.-oadRanner 11.0.0 for WINXP: buUndoCtrl+ZCutCtrl+XCopyCtrl+CPasteCtrl+VGo to Line.Ctrl+GGo to Step in Replay LogCtrl+EInsertToggle BreakpointF9Open Script DirectoryReplace with a Parameter1Use Existing ParameterEqar)d / Collapse昏 Generado/zValue=BIB Vo

32、lu 巳二b 巳;#Value=33J #Value=8xrJlr rendezvous(*11og1n);/車合点宴加在事务笄艙之前/加了集合点之怎要塢译,可以完成同时保存脚本的动作Acbon vweccnd globes, h打开参数值Run-tiae SettingsGewalRun LogicPacingISThink Time Additional aUrbutesMiscdlaneous NetworkSpeed Simulation BrowserBrowser Emulation Internet ProtocolProxyPreferences Download Filter

33、s ContentCheck DoU Format ExtensionConfiguraJionlr_start_transactionClloginx);lr_think_tine(30;web.subnit.formClogin pl*, Snapshot二t2 inf*, ITEMDATA, *!iane=usemane,e,.,”,Hane=passwordx,, Value二PasswordJ, ENDITEJt, *nane=108in.*Nane=login. y *Value=8 EHDITEM, LA3T),Value=Name E1DITEM,1r_end_transaction(llogin*, LR.AUTO);return 0;Gene

温馨提示

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

评论

0/150

提交评论