loadrunner简单实用教程幻灯片

上传人:日度 文档编号:135494679 上传时间:2020-06-16 格式:PPT 页数:61 大小:1,019.50KB
返回 下载 相关 举报
loadrunner简单实用教程幻灯片_第1页
第1页 / 共61页
loadrunner简单实用教程幻灯片_第2页
第2页 / 共61页
loadrunner简单实用教程幻灯片_第3页
第3页 / 共61页
loadrunner简单实用教程幻灯片_第4页
第4页 / 共61页
loadrunner简单实用教程幻灯片_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《loadrunner简单实用教程幻灯片》由会员分享,可在线阅读,更多相关《loadrunner简单实用教程幻灯片(61页珍藏版)》请在金锄头文库上搜索。

1、 性能测试技术交流 1 值得依赖的信息应用平台与服务提供商 主要内容 一 性能测试的基本概念二 性能测试流程三 LoadRunner操作介绍四 测试结果分析 2 一 性能测试的基本概念 3 什么是软件性能 用户视觉的软件性能 软件性能就是软件对用户操作的响应时间 管理员视角的软件性能 软件性能首先表现在系统的响应时间 其次还会关心系统状态的相关信息 开发视角的软件性能 最关注的是使性能表现不佳的因素和由于大量用户访问引起的软件故障 也就是我们所说的性能瓶颈 4 性能测试的常用方法 1性能测试2负载测试3压力测试 5 测试方法基本概念 性能测试通过模拟生产运行的业务压力量和使用场景组合 测试系统

2、的性能是否满足生产性能要求 特点 这种方法的主要目的是验证系统是否具有系统宣称具有的能力 6 测试方法基本概念 负载测试通过在被测系统上不断增加压力 直到性能指标 如通过量 响应时间 资源利用率等 特点 这种方法的主要目的是找到系统处理能力的极限 用这种方法可以比较系统调优前后的性能差异 7 测试方法基本概念 压力测试压力测试是指系统在一定饱和状态下 CPU 75 内存 70 例如CPU 内存等在饱和使用情况下 系统能够处理的会话能力 以及系统是否出现错误 其中 JVM的可用内存 数据库的连接数 数据库服务器的CPU利用率等都可以做为压力的依据 特点 这种方法的主要目的是检查系统处于压力情况下

3、 应用的表现 一般用于测试系统的稳定性 8 软件性能测试的几个主要术语 响应时间 应用系统从请求发出开始到客户端收到最后一个字节数据所消耗的时间并发用户数 登录到系统中进行业务操作的总用户数 服务器实际承受的压力不只取决于业务并发用户数 还取决于用户的业务场景 吞吐量 指单位时间内系统处理的客户请求的数量 直接体现了软件系统的性能承受能力 性能计数器 描述服务器或操作系统性能的一些数据指标 思考时间 指的是用户在进行操作时 每个请求之间的间隔时间 因为用户在使用系统时 不大可能持续不断地发出请求 9 二 性能测试流程 10 设计测试计划 在性能测试正式开展之前 需要针对本次性能测试设计测试方案

4、 测试方案的内容主要包括 项目背景性能测试需求测试环境信息性能测试场景测试实施计划参与人员以及职责 11 测试环境 工具 数据准备 测试环境准备我们的测试环境与客户的实际环境是有较大的不同 测试环境的网络 计算机硬件软件都无法做到和客户完全相一致 软件在客户那功能不正常 也许就是因为客户安装了某个不知名的其他软件造成的 因此压力测试需要遵循一些基本的原则 12 搭建测试环境的基本原则 要满足软件运行的最低要求 选用与被测软件相一致的操作系统和软件平台 营造相对独立的测试环境 无病毒的环境 13 测试环境建议 因为在测试过程中比较重视测试环境的 真实性 所以在客户的实际环境执行测试 需注意以下几

5、点 1 尽可能地降低对客户现有业务地影响 挑选在夜间或者在客户业务不繁忙的时段进行性能 2 测试过程中会产生大量数据或因为系统故障导致数据被破坏 要有很好地备份和恢复过程 3 若是在公司内部进行性能测试 尽量避免一台服务器上装多个应用 尽量少的人使用被测试服务器 这样可以减少其它因素给系统性能带来的影响 14 数据的准备 在做性能测试时比较容易忽略数据的重要性 实际上后台数据库中数据量的多少会影响压力测试的结果 比如我们测试一个查询操作 数据库表里就几行记录 这样的测试是失效的 因为即使该数据表没有建任何索引话 一个全表扫描也花不了什么时间 如果有大量数据的话 索引覆盖的问题都能暴露出来 因此

6、在做压力测试时要清楚数据库中数据量的大小 具体需要多少数据量可以根据客户数据库中的数据数量进行模拟 否则测试结果会与客户实际情况有一定的差距 15 测试脚本的录制 编写与调试 制作脚本如下步骤 脚本录制 录制过程中插入事务 插入集合点 查找动态数据 关联 参数替换 添加检查点 单脚本回放 脚本加压回放 16 三 LoadRunner操作介绍 17 LoadRunner常用组件 VirtualUserGenerator 虚拟用户脚本生成器 用于捕获最终用户业务流程和创建自动性能测试脚本 也称为虚拟用户脚本 Controller 用于组织 驱动 管理和监控负载测试负载生成器 用于通过运行虚拟用户生

7、成负载Analysis 有助于您查看 分析和比较性能结果 18 LoadRunner相关术语 1 场景场景是一种文件 用于根据性能要求定义在每一个测试会话运行期间发生的事件 2 Vuser在场景中 LoadRunner用虚拟用户或Vuser代替实际用户 Vuser模拟实际用户的操作来使用应用程序 一个场景可以包含几十 几百甚至几千个Vuser 3 Vuser脚本Vuser脚本用于描述Vuser在场景中执行的操作 4 事务要度量服务器的性能 需要定义事务 事务表示要度量的最终用户业务流程 建议录制的时候插入事务而不要等录制完后再插入事务 5 集合点为了能够模拟所有虚拟用户同时并发 需要在业务操作

8、前添加集合点 当全部用户到达该集合点时 释放所有用户 注意 只能向脚本Action部分添加集合点 19 利用vugen制作脚本 LR用Vuser 虚拟用户 来代替实际的用户 Vuser执行的操作是用Vuser脚本来描述的 Vuser脚本生成器 也称Vugen 是LR用于开发Vuser脚本的主要工具 Vugen通过录制客户端与服务器之间的活动来录制脚本 例如 在数据库应用程序中 测试工具的脚本生成器 Vugen 会监控数据库的客户端 并跟踪发送到数据库服务器和从数据库服务器接收的所有请求 当Vuser与服务器直接通信时 不需要在用户界面中耗费系统资源 这样就可以在一个工作站中同时运行大量Vuse

9、r 进而可以使用很少的测试计算机来模拟非常大的服务器负载 20 选择协议 C S Client Server 结构的win32应用程序一般可以选用winsocket协议 B S Browser Server 结构的通过浏览器浏览数据的一般选用Web Http Html 协议 1基于浏览器的应用程序推荐使用HTML basedScript2不是基于浏览器的应用程序推荐使用URL basedScript 3如果基于浏览器的应用程序中包含了JavaScript并且该脚本向服务器产生了请求 比如DataGrid的分页按钮等 也要使用URL based方式录制4基于浏览器的应用程序中使用了HTTPS安全

10、协议 使用URL based 21 22 Winsocket协议 23 Http协议 24 Vuser脚本的三个部分 这里我们简单讲讲Vuser脚本的三个部分 创建的每个Vuser脚本都至少包含三部分 vuser init 一个或多个Actions及vuser end 录制期间 可以选择脚本中VuGen要插入已录制函数的部分 通常情况下 可以将登录到服务器的活动录制到vuser init部分中 将客户端活动录制到Actions部分中 并将注销过程录制到vuser end部分中 运行多次迭代脚本 只有脚本的Actions部分被重复 而Vuser init和Vuser end部分只运行一次 如果我

11、们测试的只是登录操作 需要登录操作循环被执行 那么我们也可以将登录操作录制在action中 25 工具条 录制脚本的时候会产生如下图所示的工具条 26 录制脚本建议 录制脚本的时候 会使用LR的默认设置 把脚本录制到Vuser init中 此时我们会等录制完成后 再将脚本剪切粘贴到actions和Vuser end部分中去 这是个不可取的做法 比较好的做法是在录制的过程中 就应该通过上图所示的工具条选择我们录制的操作需要录制到脚本的哪个部分 27 脚本设计常用技巧 参数化 参数化 录制完脚本后点击工具栏上的 28 参数化 此时参数列表中没有任何参数 点击New新建一个参数 假如我要参数化用户名

12、 参数取名为UserName 29 参数化设置 30 参数化设置 Selectnextrow有以下几种选择 Sequential 按顺序一行一行的读取数据 Random 随机取值Unique 取唯一的值 这样需要保证数据表中有足够的数据 Updatevalueone有以下几种选择 EachIteration每一次迭代EachOccurrence每一次出现Once每次取一样的值 31 参数化 在参数列表中建立好需要的参数后 在脚本中 框选要参数的字符 右击鼠标 选择ReplaceWithaParameter 找到所需要的参数 点击OK 参数化就完成了 32 脚本设计常用技巧 关联 关联 我们的系

13、统经常会有些动态的数据 比如新增记录之前系统会给一个流水号 我们的脚本在录制的时候捕获了这个号码 但是每次新增流水号肯定不同 拿脚本中的原始流水号去新增记录 肯定违反数据表的主键约束 如果我们在receive的包中找到那个流水号 并把它作为参数给send包 那么问题就迎刃而解了 这就是关联 其实也是一种参数化 关联是脚本设计中相对麻烦的工作 关联成功与否直接影响脚本执行成功 若实在找不出关联的地方 则可与开发人员咨询哪个地方返回了需要关联的数据 33 脚本设计常用技巧 关联 LoadRunner有自动关联功能 能自动捕捉脚本中需要关联的数据 但得把Tools RecordingOptions

14、Correlation EnablecorrelationduringRecording选上 或者脚本录制完成后 运行一遍 然后点击则会找了脚本中需要关联的数据 可以点击Correlate完成关联 但自动关联操作往往不能完全按照用户的意图来完成 而且自动关联公对web和数据库应用等有限的协议有效 如果要对其他的类型的应用的脚本进行关联操作 就须使用手工关联操作方式 34 脚本设计常用技巧 关联 关联步骤 1 准备一个固定的操作步骤 包括输入数据等都要求相同 2 在LoadRunner的VUGenerator中使用该步骤录制形成脚本 并保存脚本 3 重复上一步动作 使用相同的步骤录制一个新的脚本

15、并保存 4 执行期间命令Tools Comparewithvusers 在弹出来的对话框中选择步骤 2 所保存的脚本 5 在WinDiff的比较窗口中查看两个脚本的不同之处 并对每个脚本的不同之处进行分析 使用关联函数对需要关联的数据进行关联 关联常用函数 Web reg save 从web服务器返回的信息找到批定的内容并将其保存到参数中 35 Vuser脚本的两种查看方式 Vuser脚本的两种查看方式 ScriptView和TreeView 我们通过View菜单条ScriptView和TreeView来切换 基于图标的TreeView和基于文本的scriptView有各自的作用 注意 在Tr

16、eeView模式下点击StartRecord是会出错的 只能在ScriptView下来录制脚本 如果你在查看data ws文件 那么Vugen将不允许你切换到TreeView模式下 36 TreeView模式查看返回数据 37 TreeView模式查看返回数据 从图中可以看出 TreeView模式下可以看到每个语句相关的Request和Reponse数据 Reponse数据按照Object的结构关系用树型表达 击击每个Object可以看到Object的HTML码 38 如何调试脚本 录制好脚本 进行参数化以及关联后 我们还得确定脚本是能正常运行的 是可以模拟用户操作的 我们脚本很少能录制好后 参数化好脚本后回放时就没有错误的 出错时我们需要调试 LR的编译器提供调试脚本的功能 我们可以调试和优化我们的脚本 39 如何调试脚本 脚本调试先后在单脚本回放下和加压回放下两种情况下进行 也就是在vugen中和在controller中进行 在controller中主要看在加压状态下参数是否能正确地传递与赋值 动态数据是否能正确地获得 40 如何设计场景 场景 场景可以理解为单个脚本在某种条件或某

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 计算机应用/办公自动化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号