《性能测试工具LoadRunner入门.》由会员分享,可在线阅读,更多相关《性能测试工具LoadRunner入门.(39页珍藏版)》请在金锄头文库上搜索。
1、软件自动化测试技术软件自动化测试技术 第6单元 性能测试工具LR6.1 性能测试概述6.2 LoadRunner工具简介6.3 LoadRunner的安装和部署6.4 LoadRunner的录制和脚本语言基础 6.5 录制和开发测试脚本 6.6 测试脚本的高级设置 6.7 创建与执行测试场景6.8 分析性能测试结果 6.1 性能测试概述功能与性能的关系-软件的性能和功能的源头都来自于用户的需求。-功能指的是一般条件下软件系统能够为用户做什么,能够满足用户什么样的需求。-性能指的是在空间和时间资源有限的条件下,软件系统是否能正常工作。-软件功能焦点在于软件“做什么做什么”,关注软件物质“主体”发
2、生的“事件”。-软件性能关注软件物质“做得如何做得如何”,这是综合“空间”和“时间”考虑的方案(资源和速度)。性能测试概述(续)用户眼里的软件性能-计算性能计算性能:“马儿要能跑”,即软件系统有多快。-资源的利用和回收资源的利用和回收:“马儿少吃草”,软件系统的“草料”就是其依存的硬件和软件资源,特别关注系统对内存的使用。-启动时间启动时间:“马儿”的加速问题,希望系统进入正常工作状态的时间越短越好。-伸缩性伸缩性:“马儿”要能快能慢-稳定性稳定性:千里马能够“路遥知马力”性能测试概述(续)性能测试常见术语-响应时间(响应时间(Response time):用户感受软件系统为其服务所耗费的时间
3、,可细分为服务器响应时间、网络响应时间和客户端响应时间。-并发用户数(并发用户数(Concurrent Users):在同一时刻与服务器进行交互的在线用户的数量。并发主要针对服务器而言,在线用户不一定会和其他用户发生并发,但在线用户数量是统计并发用户数量的主要依据之一(经验法)。性能测试概述(续)性能测试常见术语(续)-吞吐量(吞吐量(Throughput):指软件系统在每单位时间内能处理多少个事务/请求/单位数据等,反映系统的处理能力。吞吐量的大小由负载(如用户的数量)或行为方式来决定。它的定义比较灵活,在不同的场景下有不同的诠释。-吞吐率:吞吐率:吞吐量/传输时间就是吞吐率,通常用来指单位
4、时间内网络上传输的数据量,也可以指单位时间内处理的客户端请求数量,是衡量网络性能的重要指标。性能测试概述(续)性能测试常见术语(续)-TPS(Transaction Per Second):每秒钟系统能够处理的交易或事务的数量,是衡量系统处理能力的重要指标。-点击率(点击率(Hit Per Second):每秒钟用户向Web服务器提交的HTTP请求数。“点击”是Web应用能够处理交易的最小单位。-资源利用率(资源利用率(Resource Utilization):指对不同系统资源的使用程度,是分析系统性能指标进而改善性能的主要依据,是Web性能测试的重点。性能测试概述(续)性能测试的作用/意义
5、 性能测试属于软件系统级测试,其最终目的是验证用户的性能需求是否达到,常用来做:-判断软件是否满足预期的性能需求-根据测试结果判断软件的性能表现-查找系统可能存在的性能问题(找出并解决)-发现一些应用程序在功能实现方面的缺陷-对一些存在性能问题的系统,找出瓶颈并加以解决-为用户部署系统提供性能参考-性能测试概述(续)性能测试应用领域-系统的性能瓶颈定位:最常见的应用领域-系统的参数配置:测试系统在不同参数配置下的性能表现,为应用系统投产提供最佳配置建议-发现一些软件算法方面的缺陷:通过模拟多用户的并发操作发现一些单用户模式下很难发现的错误-系统的验收测试:验证预期的性能指标或验证系统中一些事务
6、指标是否符合用户期望-系统容量规划:总结不同硬件环境下的性能表现-产品评估/选型:全面评估产品的软硬件性能性能测试概述(续)性能测试方法-一般性能测试-负载测试-压力测试-并发测试-稳定性测试(可靠性测试)-疲劳强度测试-大数据量测试-配置测试6.2 LoadRunner工具简介LoadRunner(简称LR)是工业级别的性能测试工具,适用范围非常广泛,几乎支持各种主流平台产品的性能测试。LR主要特点有:-广泛支持业界标准协议-支持多种平台开发的脚本(C/Java/.NET)-创建真实的系统负载-强大的实时监控与数据采集功能-精确分析结果,定位问题所在6.2 LoadRunner工具简介(续)
7、LR主要术语-场景(Scenario)-负载发生器(Load Generator)-虚拟用户(Virtual User / Vuser)-虚拟用户脚本(Vuser Script)-事务(Transaction)-思考时间(Think Time)-集合点(Rendezvous)-事务响应时间6.2 LoadRunner工具简介(续)从性能测试到LoadRunner的映射6.2 LoadRunner工具简介(续)6.2 LoadRunner工具简介(续)从性能测试到LoadRunner的映射(续)6.2 LoadRunner工具简介(续)从性能测试到LoadRunner的映射(续)6.2 Load
8、Runner工具简介(续)LoadRunner工作原理 6.2 LoadRunner工具简介(续)LoadRunner工作原理(续) LoadRunner主要由以下几部分组成:-虚拟用户发生器 Vuser Generator(简称VuGen,集成开发环境)-调度和监控中心 Controller(框架程序和监控程序,将VuGen开发的脚本以多进程/多线程方式在Load Generator机器上运行)-压力产生器 Load Generator-结果分析工具 Analysis(数据分析工具)6.2 LoadRunner工具简介(续)使用LoadRunner进行性能测试的一般步骤:-用户确定需要进行测
9、试的业务或交易,通过用户操作和VuGen的录制功能记录并生成虚拟用户脚本。-手工修改虚拟用户脚本,确定脚本能够回放成功。-在Controller中设置场景后就可以启动测试,Controller控制Load Generator对被测系统的加压方式和行为。-Controller同时搜集被测系统各个环节的性能数据,各个Load Generator会记录最终用户响应时间和脚本执行日志。-Load Generator将数据传送到Controller,汇总测试结果。-测试人员借助Analysis对性能测试数据进行分析,进而确定瓶颈和调优方法。-针对性的对系统进行调优,重复进行压力测试。6.2 LoadRu
10、nner工具简介(续)LoadRunner的工作流程-测试需求分析:确定测试策略和测试范围-测试计划的制定与评审-测试用例的设计与开发-测试的执行与监控-分析测试结果-编写性能测试报告-总结测试经验LoadRunner上机实践1参照教材P160-165页的内容,完成LoadRunner的安装与部署。(说明:访问ftp:/192.168.226.238/yangp,可以获得LoadRunner9.5和11.0版本的安装文件。)6.4 LR的录制和脚本语言基础 6.4.1 LoadRunner三大工具简介6.4.2 LoadRunner录制原理6.4.3 C语言与LoadRunner脚本6.4.4
11、 通用VU函数 6.4.5 协议相关函数 补充学习资源:补充学习资源: LoadRunner目录分析 LoadRunner界面分析1 LoadRunner界面分析2 LoadRunner界面分析3 LoadRunner常用术语6.4 LR的录制和脚本语言基础 6.5 录制和开发测试脚本脚本录制的基本原则充分考虑脚本的执行:性能测试脚本关注的是如何模拟用户的真实行为,用于测试的脚本应该接近用户的真正操作,这要求录制后的脚本在修改过程中不要增加过多内容,尤其是不能降低其效率。录制重要的用户业务:应该选择常用的、使用频率较高的业务来进行测试。选择所需的进行录制:在Web性能测试中,如果有些操作对于用
12、户所关注的事务没有什么影响,可以不进行录制(可以暂停录制)。6.5 录制和开发测试脚本(续)设置Recording Options(Tools菜单)Web协议的两种录制方式:6.5 录制和开发测试脚本(续)选择录制方式的原则6.5 录制和开发测试脚本(续)设置Recording Options录制测试脚本查看测试脚本(Tree View / Script View)查看日志(Replay Log / Recording Log)验证回放脚本(查看Test Results)创建事务:lr_start_transaction lr_end_transaction插入集合点:lr_rendezvou
13、s设置思考时间:lr_think_time补充学习资源:补充学习资源: HP Web Tours 分析 LoadRunner录制测试脚本 LoadRunner回放测试脚本 基于HTML和基于URL的比较6.5 录制和开发测试脚本6.6 测试脚本的高级设置参数化插入检查点(Text Check / Image Check)设置关联(自动关联 / 手动关联)设置Run-time Settings脚本的错误处理调试脚本关联(Correlation)6.6 测试脚本的高级设置(续)关联的目的:6.6 测试脚本的高级设置(续)关联的一般步骤:6.6 测试脚本的高级设置(续)常见的需要关联的情景:6.6
14、测试脚本的高级设置(续)补充学习资源:补充学习资源: 增强测试脚本 设置关联 设置Run-time Settings 错误处理 脚本调试6.6 测试脚本的高级设置6.7 创建与执行测试场景设计手动测试场景(Manual Scenario)配置场景计划(Scenario Schedule)设计面向目标的场景(Goal-Oriented Scenario)配置负载生成器(Load Generator)配置集合点配置IP Spoofer配置监视器执行测试场景6.8 分析性能测试结果 查看Analysis概要报告(Summary)查看Analysis标准图合并图和关联图筛选图数据和排序图数据生成测试报
15、告LoadRunner测试过程步骤 1 创建脚本:捕获在被测应用程序中执行的典型最终用户业务流程。 步骤 2 设计场景:通过定义测试会话期间发生的事件,设置负载测试环境。步骤 3 运行场景:运行、管理并监控负载测试。步骤 4 分析结果:分析负载测试期间 LoadRunner 生成的性能测试结果数据。HP Web Tours的性能测试的性能测试 假设性能测试要求如下:1. 能够成功处理10家旅行社的并发操作。2. 能够处理10个并发的机票预订操作,且响应时 间不能超过 90秒。3. 能够处理10家旅行社并发的航班路线查看操作,且响应时间不能超过120秒。4. 能够处理10家旅行社的并发登录和注销操作, 且响应时间不能超过10秒。LoadRunner综合实践LoadRunner 9.5 中文教程中文教程LoadRunner补充学习资源