LoadRunner 操作技巧(个人经验总结)

合集下载

软件测试学习宝典之Loadrunner测试小技巧

软件测试学习宝典之Loadrunner测试小技巧

软件测试学习宝典之Loadrunner测试小技巧今天我们请到了,千锋教育的软件测试老师,给初学者总结了软件测试学习宝典,下面是对软件测试学习宝典其中对Loadrunner测试小技巧做的具体解说,希望对热爱软件测试的人士有一些帮助。

1.一些Web虚拟用户脚本录制后立刻回放没有任何问题,但是当设置迭代次数大于1时,如果进行回放则只能成功迭代一次。

为什么从第二次迭代开始发生错误?这种现象多是由于在“Run-time Setting”的“Browse Emulation”的设置中,勾选了“Simulate a new user on each iteration”及其下面的选项“Clear cache on each iteration”这两个选项的含义是每次迭代时模拟一个新的用户及每次迭代时清除缓存。

由于脚本迭代时,init和end只能执行一次,如果每次迭代都模拟一个新的用户并清除缓存,则用户登录信息将一并清除,因此迭代时可能会发生错误。

2.虚拟客户脚本“Run-time Setting”中的线程和进程运行方式的区别?如果选择“Run Vuser as a process”,则场景运行时会为每一个虚拟用户创建一个进程;选择“Run Vuser as a thread”则将每个虚拟用户作为一个线程来运行,在任务管理器中只看到一个mmdrv.exe,这种方式的运行效率更高,能造成更大的压力,时默认选项。

另外,如果启用了IP欺骗功能,则先在Controller中选中Tools菜单下的“Expert Mode”,然后将Tools菜单下的“Options>General”标签页中的IP地址分配方式也设置为与Vuser运行方式一致,同为线程或进程方式。

3.在Controller中运行Web相关测试场景时,经常会有很多超时错误提示,如何处理这类问题?这主要有脚本的默认超时设置引起。

当回放Web脚本时,有时候由于服务器响应时间较长,会产生超时的错误。

LoadRunner操作之快速掌握

LoadRunner操作之快速掌握

LoadRunner操作入门案例介绍:测试Tomcat自带的一个jsp提交表单的性能。

测试页面如下:输入一个数字后,点击提交,执行程序后返回页面:测试步骤第一步:录制脚本从程序菜单中启动“LoadRunner”->“Visual User Generator”在协议选择框中选择“Web(HTTP/HTML)”协议,进入主界面。

在工具条上选择“Start Record”,弹出启动“Start Recording”对话框。

在URL输入框中输入上述要测试的第一个页面的URL,即输入表单的页面。

同时注意,请让“Record the application startup”选择框失效,以便手工控制录制开始的时间,跳过刚开始的输入页面。

点击“OK”,这是LoadRunner会启动浏览器,并指向第一个输入页面,同时在浏览器窗口上方将出现一个“Recording Suspended…”的工具条窗口。

等待输入页面显示完全以后,点击工具条窗口中的“Record”按钮,进入录制状态,从现在开始,在打开的浏览器上的所有操作将被录制成测试的脚本。

执行预定的表单提交动作,等结果页面显示完整以后,点击工具条上的黑色方框按钮,停止录制,回到Visual User Generator的主窗口,此时可以看到脚本已经录制成功。

选择“File”->“Save”,把当前的脚本保存下来第二步:生成测试场景选择菜单“Tools”->“Create Controller Scenario”,弹出“Create Scenario”对话框,保持缺省值不变,直接点击“OK”,唯一可能需要该的就是测试结果文件生成的路径。

这时,将启动LoadRunner的另一个工具“Controller”,这是执行压力测试的环境。

Controller的主界面有“Design”和“Run”两个Tab组成,可以随时切换,首先进入的是Design界面,在这里可以调整运行场景的各种参数,如果只是作强度测试,唯一需要调整就是并发用户数,如下图所示:设置好运行场景以后,切换到“Run”界面,如下图所示:时显示当前执行中的虚拟用户的情况,等到所有虚拟用户都执行完毕以后,左下方的四个曲线窗口和底部的数据窗口会显示出测试结果,如下图所示:第三步:查看测试结果在上述结果界面上,有四个曲线窗口,其中最简单、也是最有用的就是上面两个,点击各个窗口,可以对应的看到底部的数据窗口会显示响应数据。

loadrunner常见用法学习笔记

loadrunner常见用法学习笔记

loadrunner常见⽤法学习笔记LoadRunner学习记录LoadRunner 2007-08-29 10:48:40 阅读43 评论0 字号:⼤中⼩订阅下⾯是对LoadRunner学习笔记,深⼊中。

1\集合点:插⼊集合点是为了衡量在加重负载的情况下服务器的性能情况。

在测试计划中,可能会要求系统能够承受1000 ⼈同时提交数据,在LoadRunner 中可以通过在提交数据操作前⾯加⼊集合点,这样当虚拟⽤户运⾏到提交数据的集合点时,LoadRunner 就会检查同时有多少⽤户运⾏到集合点,如果不到1000 ⼈,LoadRunner 就会命令已经到集合点的⽤户在此等待,当在集合点等待的⽤户达到1000 ⼈时,LoadRunner 命令1000 ⼈同时去提交数据,从⽽达到测试计划中的需求。

2\事务(Transaction):为了衡量服务器的性能,我们需要定义事务。

⽐如:我们在脚本中有⼀个数据查询操作,为了衡量服务器执⾏查询操作的性能,我们把这个操作定义为⼀个事务,这样在运⾏测试脚本时,LoadRunner 运⾏到该事务的开始点时,LoadRunner 就会开始计时,直到运⾏到该事务的结束点,计时结束。

这个事务的运⾏时间在结果中会有反映。

插⼊事务操作可以诼贾乒讨薪校部梢栽诼贾平崾蠼⼩ oadRunner 运⾏在脚本中插⼊不限数量的事务。

3\参数化输⼊如果⽤户在录制脚本过程中,填写提交了⼀些数据,⽐如要增加数据库记录。

这些操作都被记录到了脚本中。

当多个虚拟⽤户运⾏脚本时,都会提交相同的记录,这样不符合实际的运⾏情况,⽽且有可能引起冲突。

为了更加真实的模拟实际环境,需要各种各样的输⼊。

参数化输⼊是⼀种不错的⽅法。

4\参数化包含以下两项任务:①在脚本中⽤参数取代常量值。

②设置参数的属性以及数据源。

(注:不是所有的函数都可以参数化的。

)5\参数的类型。

DateTime:很简单,在需要输⼊⽇期/时间的地⽅,可以⽤DateTime 类型来替代。

loadRunner测试要点心得

loadRunner测试要点心得

监控服务器1、监视连接前的准备工作1)进入被监视windows系统,开启以下二个服务Remote Procedure Call(RPC) 和Remote Registry Service (开始—)运行中输入services.msc,开启对应服务即可)。

2)在被监视的WINDOWS机器上:右击我的电脑,选择管理->共享文件夹->共享在这里面要有C$这个共享文件夹(要是没有自己手动加上)。

3)在安装LR的机器上,开始—》运行,输入\\被监视机器IP\C$ 然后输入管理员帐号和密码,如果能看到被监视机器的C盘了,就说明你得到了那台机器的管理员权限,可以使用LR去连接了。

(LR要连接WINDOWS机器进行监视要有管理员帐号和密码才行。

)W'bU#e(uD B0问题:在执行步骤3)时,输入\\被监视机器IP\C$,出现不能以administrator身份访问被监控系统(若采用这种方式用LR对其监控的话,会提示:“找不到网络路径”)的情况,现象就是用户名输入框是灰色的,并且默认用户是guest。

51Testing软件测试网6Lua`Oyz解决办法:这是安全策略的设置问题(管理工具-> 本地安全策略-> 安全选项->“网络访问:本地帐户的共享和安全模式”)。

默认情况下,XP的访问方式是“仅来宾”的方式,如果你访问它,当然就固定为Guest来访问,而guest账户没有监控的权限,所以要把访问方式改为“经典”模式,这样就可以以administrator的身份登陆了。

修改后,再次执行步骤3),输入管理员用户名和密码,就可以访问被监控机器C盘了。

"p"I*K\ gH{eL0若这样都不行的话(可能是其它问题引起的),那只好采取别的方法了。

在服务器的机子上,通过windows自带的“性能日志和警报”下的“计数器日志”中新增加一个监控日志(管理工具—)性能—)性能日志和警报),配置好日志,也能监控服务器的cpu、memory、disk 等计数器。

LoadRunner使用总结报告

LoadRunner使用总结报告

在打开的Launcher窗口中,选择Create/Edit Scripts菜单,打开虚拟用户脚本生成器。
打开协议 新建协议 通过模板新 建协议
快捷工具栏
协议顾问
最近使用的协议
最近使用的脚本
打开新建脚本窗口,选择协议,并创建新的脚本。
从本地硬盘打开已保存的脚本。
根据已有脚本模板创建新的脚本。
打开录制窗口,录制用户操作,系统会自动判断使用使用的协 议,有可能有多个协议,但系统建议的协议并不一定是最优协 议。
LoadRunner包含以下组件: Virtual User Generator:虚拟用户生成器。录制最终用户业务流程并创建自动 化性能测试脚本,即Vuser脚本。
Controller:组织、驱动、管理并监控负载测试。
Load Generator:通过运行Vuser产生负载。负载生成器可以在别的计算机上安 装,然后在测试机通过Controller连接。 Analysis:用于查看、剖析和比较性能结果。 Launcher:使用户可以从单个访问点访问所有LoadRunner组件。
Comment:注释。为代码或者方法、类添加注释。 Log Message:通过LR的日志系统输出日志。
New Parameter:创建参数化新参数。
Toggle Breakpoint:设置当前行为断点,当在脚本编辑窗口,通 过运行命令,程序执行到当前行时挂起,和eclipse的breakpoint 是一样的功能。
如果不设置Pacing时间,即在上次循环结束后,立即进入下次循环,可能会出现因为请求在排队,没有 进入执行状态,而导致的事务相应时间很长,甚至超时。这样得到的最终相应时间,包含了队列等待时 间,会导致结果不准确。 设置Pacing后,会减轻服务器压力,得到的测试结果是服务器非极限状态下的数据。

loadRunner使用教程

loadRunner使用教程

loadRunner测试步骤1.打开loadRunner,点击创建/编辑脚本2.点击新建脚本,创建自己的测试脚本3.选择web(HTTP/HTML),点解创建4.工具→录制选项→录制→HTML高级5.选择第二个,点击确定因为遇到了如下的问题Error-27796 ,选择第二个,选择loadRunner自己原始的脚本类型。

Error-27796错误种类繁多,这里以遇到的为例6.HTML属性→高级→勾选支持UTF-8,点击确定(选择我们的支持字符集为UTF-8,防止脚本中出现乱码问题)7.选择录制里的录制应用程序,点击开始录制8.URL地址:写你要测试的地址,其他不做改动,这里以百度为例9.点击确定之后如下10.当正在录制…(XX个事件)事件不再变动,点击蓝色停止按钮11.等待自动生成完毕12.选择加载中的迭代,点击打开运行时设置13.选择常规选项中的其他,勾选将每步定义为一个事物将每个操作定义为一个事物表示:如下图中的红色箭头所指的Action,每个Action为一个事物将每步定义为一个事物表示:如下图绿色箭头所指的每一步为一个事物14.浏览器→浏览器模拟去掉勾选每次迭代模拟一个新用户点击确定15.点击保存,选择存放路径,命名脚本名称,点击保存,保存脚本16.准备加载→并发用户→创建controller场景17.手动场景选择Vuser数,测试的用户数量,这里以300为例,点击确定18.双击启动Vuser编辑操作,根据自己的需求设置多少秒多少个user,这里以每15秒50个user为例。

同样,停止Vser拦也要设置成与启动拦一样。

持续时间,是你运行测试设定的时间。

19.保存场景,取一个场景名称eg:test_lrs 与脚本保存在同一目录下20.点击黑色三角开始测试21.在左侧选择你要的测试场景图,双击在右侧显示。

或者右键关闭不要的场景图22.当这里再次显示开始测试时,说明测试已经结束23.点击结果→分析结果24.点击保存结果,命名结果名称,测试结束。

loadrunner性能脚本的常用设置

loadrunner性能脚本的常用设置

一、关于脚本1.当脚本代码很长时,为了显示更清晰,可以在脚本中点击右键如下图,选择ExpandAll/Collapse All。

脚本函数就会以“-”展开或“+”折叠。

2.快速定位日志:在脚本中选择函数—>右键,选择Go to Step in Replay Log,就能在Replay Log中找到相应函数输出的日志。

3.快速定位代码行:在脚本中点击右键,选择Go to Line,在弹出框中输入数字,即能定位到指定的代码行。

4.快速打开脚本文件所在位置:在脚本中点击右键,选择Open Script Directory,即能打开脚本文件所在的文件夹。

5.插入断点:在光标停留的代码行处,按下"F9",或通过下图操作。

6.单步调试:按下"F9",或通过下图操作。

二、通用页设置通用页设置位置:VuGen—>Tools—>General Option1.运行脚本时,函数间等待的时间间隔(单位毫秒)设置:操作如下图。

主要实现脚本减速运行。

2.修改脚本字体设置:操作见下图。

由于LR是英文版的,当有些字符显示有问题时(如“/”会显示成“¥”),可考虑设置该选项。

3.选择脚本比较工具设置:操作见下图。

如果不选,默认使用的是WinDiff工具。

4.回放时浏览器与脚本同步显示设置:操作如下图。

三、运行时设置运行时设置位置:VuGen—>Vuser—>Run-time Settings,或打开脚本后直接按“F4”1.脚本迭代次数设置:操作见下图。

每个脚本部分都可插入Actions、Block,但只有Run部分的属性可以修改运行的方式,主要用于控制Action间运行的顺序。

而且只有Run logic为Random时才能点击Run 中每个Action的属性设置其百分率,主要用于控制每个Action的并发数。

2.脚本迭代间的等待时间设置:4.带宽模拟方式设置:操作见下图。

LoadRunner学习总结

LoadRunner学习总结

LoadRunner学习小结今年十月份我到北京跟张坤学习性能测试知识,共花了三个星期学习LoadRunner。

以下是我的学习小结。

一.什么是LoadRunnerLoadRunner是一种预测系统行为和性能的工业标准级负载测试工具。

通过以模拟多个用户实施并发负载测试及实时性能检测的方式来确认和查找问题,能对整个企业架构进行测试。

二.LoadRunner的优点1.轻松创建虚拟用户:通过记录下业务流程转为测试脚本,在机器上产生多个用户访问,减少负载测试需要的硬件和人力资源。

2.创建真实的负载:可以通过Controller设定负载方案,如定义用户在什么时候访问系统以产生负载,所有用户同时执行一个动作来模拟峰值负载情况等。

3.实时监测器:可以实时显示交易性能数据(如响应时间)和其他系统组件如数据库,网络等的实时性能。

4.分析结果以精确定位问题所在:LoadRunner能收集汇总所有测试数据,提供高级的分析和报告工具。

三.LoadRunner的安装与使用1.安装过程详见上传的LoadRunner使用手册,在此不再详细介绍。

2.具体使用:点击File新建录制文件,也可以点击下面的NEW快捷键进行新建。

使用File新建,会弹出协议选择窗口,选择新的单协议脚本(New Single Protocol Script)的Web(HTTP/HTML)项,确定即可(选择Web项是因为我们测试的是Web应用)。

接着会弹出开始录制的设置项,需要写入录入系统的地址,点击确定后就会根据录入地址展现系统页面,开始录制脚本,出现小工具条:第一个按钮为录制键第二个为回放脚本键第三个为停止录制键第四个为暂停录制键第五个为编译脚本键第六个为创建新的Action键。

LR的录制脚本分为三个部分,vuser_init、vuser_end 和Action。

脚本循环执行时,只执行一次vuser_init和vuser_end,而多次循环Action 部分。

LOADRUNNER简单操作说明

LOADRUNNER简单操作说明

loadrunner的使用说明一、录制脚本1、在开始菜单中打卡Vugen录制脚本2、建立一个新的脚本,点击按钮,弹出如图所示的界面,用来选择录制脚本的协议。

这里我们选择录制Web脚本的协议。

3、选择好协议后,点击“OK”按钮,界面显示新建脚本的界面。

4、在弹出的窗体中输入要测试的系统的URL链接地址:5、点击“OK”按钮以后,开始录制脚本,系统会弹出IE浏览器,以及如下图所示的功能菜单栏,在IE浏览器上录制要进行的操作,录制完成后,点击按钮,结束操作。

录制脚本的时候,每一步操作录制在一个事物里面,例如:action:录制的是打开门户首页界面的操作action1:录制的是登录时打开登录后界面的操作action2:录制的是打开单点登录的操作。

在录制的时候选择通过下拉框选择操作的步骤录制在哪个事务里面,录制的时候点击按钮,用于增加新的action。

建议把lr_think_time(x); 函数,删除,以免影响测试结果。

6、录制完成后,脚本会自动生成。

注意:录制好的脚本,应该去掉不需要的事务,如登录操作,只保留打开登录首页的操作即可,打开登录前首页的操作可以注释掉。

/* */注释符号。

7、点击菜单栏上的“回放”按钮,。

查看脚本是否能够回放成功。

8、如果回放成功,可以点击菜单栏中的下面的击确定按钮。

9、如果回放不成功,就需要查看日志,具体分析不成功的原因了,这个需要具体问题具体分析,本文中不做说明。

本文中简单介绍一下修改一些配置,可能回放可以成功。

调整菜单中的参数:在菜单栏下面。

弹出如下界面:选择左侧栏目的,去掉勾选选择左侧栏目的,勾选,其他的配置信息不作修改,进行回放,看是否能够成功。

二、执行场景1、打开场景执行器后,如图所示,可以在列表中的列,修改分配每个脚本执行的并非用户数,直接在表格中填写即可。

场景执行时可以添加多个脚本,点击按钮选择要添加的脚步,确认后,脚本显示在列表中。

2、设置场景执行的时间,点击按钮,弹出界面如图所示:该界面是设置,开始运行脚本时,先执行多少个用户,如图所示的含义是每3分钟执行5个用户,根据实际需要可以进行修改。

使用LoadRunner进行性能自动化测试的方法和技巧

使用LoadRunner进行性能自动化测试的方法和技巧

使用LoadRunner进行性能自动化测试的方法和技巧LoadRunner是一款常用的性能测试工具,它可以模拟多种负载条件下的应用程序行为,帮助开发人员检测和解决性能问题。

本文将介绍使用LoadRunner进行性能自动化测试的方法和技巧,帮助读者更好地利用LoadRunner提升应用程序的性能。

一、LoadRunner简介LoadRunner是由Micro Focus公司开发的一款性能测试工具,它可以模拟多种负载条件下的应用程序行为,帮助开发人员评估应用程序的性能与稳定性。

LoadRunner提供了丰富的功能和工具,包括脚本录制、负载生成、性能监控和报告分析等,可用于测试各类应用程序,如Web应用、移动应用和企业应用等。

二、性能自动化测试的基本步骤1. 确定测试目标和需求:在进行性能自动化测试之前,需要明确测试目标和需求,例如确定负载要求、并发用户数、响应时间等指标,以便后续的测试设计和执行。

2. 脚本录制与回放:LoadRunner提供了脚本录制功能,可以通过录制用户在应用程序上的操作来生成测试脚本。

在录制完成后,可以使用脚本回放功能对录制的操作进行模拟,以验证应用程序在负载条件下的性能表现。

3. 参数化和数据驱动:在进行性能测试时,往往需要模拟多个用户的行为。

为了实现这一目标,可以通过参数化和数据驱动的方式来设置不同用户之间的差异。

LoadRunner提供了参数化工具和数据驱动功能,可以轻松地设置和管理测试数据。

4. 脚本调优和编辑:在录制和回放过程中,可能会出现一些不必要或重复的操作,这会影响测试的准确性和效率。

通过对脚本的调优和编辑,可以剔除不必要的操作,减少脚本的体积和执行时间。

5. 负载生成和分析:LoadRunner提供了多种负载测试模式,可以模拟不同负载条件下的应用程序性能。

通过调整负载模式和负载参数,可以对应用程序进行不同负载场景的测试。

测试完成后,可以使用LoadRunner提供的分析工具对测试结果进行统计和分析,以便找出性能问题和瓶颈。

LoadRunner使用说明

LoadRunner使用说明

负载测试使用说明1. 打开运行 (2)2. 基本操作 (2)3. 创建负载测试脚本 (3)3.1. 新建脚本 (3)3.2. 录制并生成脚本 (5)4. 负载测试 (6)4.1. 打开负载测试界面 (6)4.2. 参数设置 (6)4.3. 运行测试 (7)4.4. 生成测试报告 (8)5. 常见问题解决方法 (9)5.1. 错误提示一:Cannot Save the license information (9)5.2. 错误提示二:LoadRunner Controller cannot create Vusers (10)1.打开运行安装成功后打开LoadRunner.exe,主界面如图1-1所示。

图1-12.基本操作主界面左上角是测试软件的基本操作,分为3个模块,如图2-1:图2-1从上而下依次为Create/Edit Script 创建/编辑脚本,创建空白的脚本文件并记录测试的过程,以便该使软件能够重复执行测试。

Run Load Tests 运行负载测试,用上面生成的脚本记录进行负载测试。

Analyze Test Results分析测试结果,对负载测试的结果警醒分析3.创建负载测试脚本要进行负载测试首先要创建脚本,那么我们就先点一下Create/Edit Scrip,弹出如图3-1所示:图3-1在左上角有一排按钮,这是创建脚本的基本操作如图:图3-2从左至右依次为New Script 新建空白脚本Open Existing Script 打开已存在的脚本Create Script From Template 根据模板创建脚本Protocol Advisor方案顾问(这个估计永远用不到所以无视)3.1.新建脚本点击New Script探出对话框,如图:图3-3这里可以创建各种类型的脚本,在左侧选取第二个New Multiple Protocol Script这次是测试网页的负载测试,那么我们选Web(HTTP/HTML) ,鼠标双击或按中间的黑色箭头把这一项加到右侧列表中,如下图所示,最后点击Create完成新建脚本操作。

Loadrunner一些不常用的功能总结

Loadrunner一些不常用的功能总结

Loadrunner一些不常用的功能总结Loadrunner一些不常用的功能总结背景这两天各种通过项目给新人培训,没想到培训期间在给新人讲解的时候发现好多功能或者菜单自己也没用过也不知道干啥用。

趁着这两天有点时间,赶紧总结下来,目的有二:一是能够补充自己认识不足;二是知道多一个功能在以后遇到问题的时候也能够多一条路子进行解决,别默默守着好用的工具或者好用的功能却因为不知道而被困难绊住。

那个,实际上本文其实也就是翻译下loadrunner(以后简称:lr)自带的说明文件,然后网上找点资料啥的再结合一下自己的推测,在任何对应界面或者窗口按f1就有,想看原文的自己看就好,大家看着还是不懂的话建议自己百度,反正我这些也就是百度出来的。

录制option就是这个了,打开啥样自己看,接下来按照左边的菜单一个一个说啦,只说不常用的啦。

GeneralScript(脚本)上面的language我就不用多说了吧,主要说说下面的选项吧。

Close all AUT processes when recording stops官方解释是。

管他呢,AUT是application under test被测应用,整个解释翻译过来就是:当你停止录制时自动关闭被测应用。

我试过了,比如你用ie访问网站录制,如果你点了停止录制,那么lr打开的哪个ie窗口也没了。

顺便一提,这个选项的默认值是关闭的。

Generate fixed think time after end transaction翻译完就是:以秒为单位,在每个事物之后添加一个固定的思考时间。

这个也是默认关闭的,如果开启,默认添加的思考时间是3秒,当然你可以自己设置。

Generate recorded events log生成一个日志记录事件,啥样的事件呢,录制过程中发生的事件都算。

这个默认是关闭的Generate think time greater than threshold为思考时间设置一个坎,超过这个坎的就加思考时间,没超过这个坎的就不加。

LoadRunner使用技巧与问题排除技巧

LoadRunner使用技巧与问题排除技巧

让LoadRunner走下神坛Loadrunner无疑是个强大有力的压力测试工具。

他的脚本能录制生成,自动关联;测试场景能面向指标,多方监视;测试结果图表显示,拆分组合。

相信有人这样想象过:拿着一张性能指标标准列表和测试数据相比较,如同PH试纸相同,遇碱则蓝,遇酸则红,一目了然,之后就能大声地喊道:我找到了软件系统的性能瓶颈!然而,我们无论在loadrunner前面加多少个“强大”、“智能”的形容词,别忘了其最终修饰的只是个名词-“工具”。

《大话西游》中也有相当精辟的论断:官兵?最多也只是个长了痔疮的官兵!把loadrunner比喻成长了痔疮的官兵有点粗俗,但loadrunner他是个工具,那么是否能够找到性能瓶颈就取决于使用工具的人,而不是工具本身。

要做一个成功的性能测试,仅读懂和精通了loadrunner的使用手册是不够的,还需要对被测软件系统的方方面面都要有了解,比如软件体系构架,网络拓扑等知识。

这就如同一个技艺高超的木匠,并不是因为他背熟了凿子,锤子的说明书,而是他能结合木材的质地和尺寸,用凿子和锤子这些工具做出一把精巧的椅子来。

那么在性能测试中,人的智慧活动体目前哪里呢?一.首先性能测试也是测试的一种,这就意味着做性能测试也要写测试案例。

你所作的性能测试能不能足以支持找出性能测试瓶颈,和你在初期设计的测试案例关系甚为重要。

我曾写过对一个软件系统的不下十个性能测试场景案例,等后来运行时却发现我必须增补几个案例才能找到瓶颈,而原来十多个案例其实重复甚多。

如果你要写出好的不重复的性能测试案例来,你就得对被测软件系统有一定的了解。

在这里,我顺便插一句,在目前测试界总在争论测试人员需不必懂编程,需不必有研发经验这种问题,这完全是本末倒置,忘记了测试人员的目标是什么,测试目标就是写出好的测试案例,好的测试案例就是发现了一个原来未曾发现的软件bug。

那么一个测试人员知识体系是否够用的标准就是能不能写出一个好的测试案例。

LoadRunner字符串与参数的操作及转换技巧

LoadRunner字符串与参数的操作及转换技巧

LoadRunner字符串与参数的操作及转换技巧LoadRunner字符串与参数的操作及转换技巧刚开始学LR时,经常搞不清楚变量和参数的区别与用法,最近在一次脚本编写中,整理出来的一些小技巧,与大家一起分享。

//字符串复制strcpy(str,"Hello ") ;//字符串连接strcat(str,"World !");lr_message("str: %s",str);//变量转为参数,将变量str的值存到参数Param中lr_save_string(str,"Param");//参数复制lr_save_string(lr_eval_string("{Param}"),"Param_1");//参数转为变量strcpy(str1,lr_eval_string("{Param_1}"));lr_message("str1: %s",str1);//参数名称格式化输出到变量中sprintf(str2,"{Param_%d}",1);lr_message("str2: %s",lr_eval_string(str2));运行结果:str: Hello World !vuser_init.c(14): Notify: Saving Parameter "Param = Hello World !"vuser_init.c(19): Notify: Parameter Substitution: parameter"Param" = "Hello World !"vuser_init.c(19): Notify: Saving Parameter "Param_1 = Hello World !"vuser_init.c(24): Notify: Parameter Substitution: parameter "Param_1" = "Hello World !"str1: Hello World !vuser_init.c(30): Notify: Parameter Substitution: parameter "Param_1" = "Hello World !"str2: Hello World !分类: LoadRunner。

LoadRunner小技巧集锦

LoadRunner小技巧集锦

PrefTest工作室/preftest/1、录制脚本中包含中文,出现乱码怎么办?把录制选项中的Support charset选中UTF-8录制脚本后,切换到树视图中,打开相应的脚本页面。

在右侧的PageView中录制的脚本呈现中文版式,但是当切换到Server Response中,所有的中文全部换成的乱码,如“勌缞仫訆”。

原因是服务器端没有把响应的编码设置为gb2312在IIS中找到Web.Config文件,在<system.web>….</system.web>节加入<globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312"/>后再次录制脚本,乱码变中文。

2、录制到的脚本是空白的有可能是由于录制的URL地址采用的是localhost的问题,改成分配的IP地址或127.0.0.1试试。

3、插入文本检查点步骤时,使用web_reg_find,通常TextPfx和TextSfx中会包含双引号,需要进行转义(用斜杠),例如:web_reg_find("Search=Body","SaveCount=Welcome","TextPfx=欢迎<a class=\"drop\" id=\"viewpro\" onMouseOver=\"showMenu(this.id)\">","TextSfx=</a>",LAST);4、使用web_image_check插入图片检查点时需要主要设置Run-Time Setting中的Enable Image and text check选项:使用web_find函数插入文本检查点也一样要做此设置5、性能测试往往需要准备大批量的数据,大批量数据的生成方法有很多种,常见的有:(1)编写SQL语句来插入数据(2)使用DataFactory等专业的数据生成工具(3)通过LoadRunner录制回放的方式重复执行生成大批量数据Tips:使用DataFactory插入nchar数据类型的数据时会出现空值的情况,可以先修改数据库的数据类型设置,插完数据后再改回来6、在录制脚本的过程中插入注释,录制后查看和理解脚本会更加方便。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Load Runner 相关概念解析集合点1)集合点用以同步虚拟用户以便恰好同一时刻执行任务。

在没有性能测试工具之前,要实现用户的并发是很困难的,最常见的方法就是把公司的所有或者部分员工召集起来,有一个同志喊123开始。

然后大家一起提交数据。

2)Load Runner的集合点则可以完全实现用户的同步问题,而且可以模拟成千上万的用户操作是轻而易举的事情。

3)集合点的设置方法A.在录制过程中可以设置集合点。

B.在使用Load Runner的Controller进行负载时,可以通过依次选择【Scenario】>【Rendezvous…】项实现。

C.可以选择某个虚拟用户后单击enable rendezvous或disable rendezvous.可以设置许启用或者禁止某个集合点.D.可以设置集合点策略,在Rendezvous information,点击Policy按钮。

这个很重要。

有三种情形。

E.在集合点设计策略窗体中也可以设计集合点释放比例。

还可以设置Timeout between Vusers虚拟用户之间的超时间隔。

一般默认是30秒。

可以根据实际情况进行设置。

事务事务是要度量其服务器响应时间的任务或操作集。

一个完整的事务由事务开始、事务结束以及一个或多个业务操作/任务构成。

重点提示事务必须是成对出现,即一个事务有事务开始,必然要求有事务结束。

不要将Lr_think_time放在事务里,影响分析和统计,除非有特殊的情况需要这么做。

检查点检查点的作用是在回放脚本期间搜索特定的文本字符串或者图片等内容,从而验证服务器响应内容的正确性。

添加检查点方法:切换到脚本数视图,然后在左侧切换到“Server response”页,然后添加一个文本Add a Text check。

也可以检查图片。

P14重点提示检查点设置完成后,要保证检查点能使用,需要在Run Time settings –Preferences >Enable Image and Text check 复选框选上,否则的话检查点失效。

思考时间用户在执行两个连续操作期间等待的时间称为思考时间。

LoadRunner 在录制脚本的时,虚拟用户产生器将录制实际的停留等待时间并将等待时间插入到脚本,脚本中lr_think_time函数即为思考时间。

✓可以在Run-time Setting(运行时设置)来决定是否使用思考时间,也可以设置如何使用思考时间。

Load Runner基本使用1协议的选择LR协议的正确选用,关系到脚本是否能够正确录制与执行,十分重要,因此在进行程序的性能测试之前,测试人员必须弄清楚被测试的程序使用的是什么协议。

2脚本的创建过程P19✓第一步选择正确的协议和默认浏览器(针对web应用)进行脚本录制✓第二步脚本优化与调试,参数化、事务、集合点、检查点的应用,在必要的情况下可以加入逻辑或者其他控制。

✓第三步脚本的执行3脚本的参数化P29✓Insert> New Parameter…进行参数化设置✓数据分配方法:在Select Next row 列表中选择一个数据分配方式,一般包括Sequential(顺序)、Random(随机)、Unique(唯一)。

✓数据更新方式(P30):在Update value on 列表中选择一个数据更新方式。

✓更真实的模拟用户的情景更真实模拟用户的行为。

脚本录制及优化1录制脚本以及Action的划分1.选择正确的协议B\s结构,一般选择Web(html\http)2.Vuser_init 是脚本初始化的过程,我们将一部分的验证程序的脚本放在这里面,来完成要验证程序的初始化。

初始化的过程在验证的时候只执行一次。

3.Action是我要验证业务的过程,我要将验证的的事务放在这部分,来完成要验证的系统性能,Action可以划分多个。

4.Vuser _end是脚本退出的过程,我们将我们不验证的内容放在这个,来完成脚本的退出操作。

这部分的脚本也是执行一次.关于录制脚本参数的选择:HTML-based script与URL-based script的脚本的区别:使用“HTML-based script”的模式录制脚本,VuGen为用户的每个HTML操作生成单独的步骤,这种脚本看上去比较直观;使用“URL-based script”模式录制脚本时,VuGen可以捕获所有作为用户操作结果而发送到服务器的HTTP请求,然后为用户的每个请求分别生成对应方法。

选择哪种模式应该根据实际需要来进行,下面是一些常见的参考原则:1.基于浏览器的应用程序推荐使用HTML-based script2.不是基于浏览器的应用程序推荐使用URL-based script3.如果基于浏览器的应用程序中包含了java script,并且该脚本向服务器发送了请求,比如DataGrid的分页按钮等,推荐使用URL-based script;4.基于浏览器的应用程序中使用了HTTPS安全协议,建议使用URL-based script方式录制.如果使用HTML-based script模式录制后不能成功回放,可以考虑改用URL-based script模式来进行录制,因为这种情况多是上面所列举的情况所引起的。

2脚本回放在脚本录制完成以后,我们要进行编译,compile(shift+f5),还可以进行单步调试f10。

脚本验证通过,不一定代表在load过程就能通过,因为loadrunner的是底层数据流的方式来产生压力的。

这点与QTP是不同的,qtp是记录事务的操作。

3脚本优化1.添加事务点,并且加入事务点的注释。

添加事务点有三种方式,第一种通过函数直接添加lr_start_transaction (“事务点名称”);lr_end_transaction(“事务点名称”,返回的值). 第二种,图形界面的方法;第三种,insert 也有添加事务的工具。

2.添加集合点3.设置参数化第一种,在要参数化的值上直接进行参数化;第二种,就是新建一个参数化的值,然后进行替换。

使用parameters list参数列表来新建参数,然后点击参数化的值,鼠标右键选择用一个已存在的参数值来替换。

添加一个日志输出函数,来验证你所使用的参数化是否实现。

一般在事务结束的时候来进行日志输出,如:lr_log_message(“用户名:s%”,lr_eval_string (“username”) );4.设置检查点要注意手动开启检查点。

Lr_reg_find(“Text=登陆”,”savecount=sum”,”search=body”,last);在实务结束的时候加lr_log_message(“用户名:s%”,lr_eval_string (“username”) );if (strcmp(lr_eval_string(“{sum}”),”0”)==0)lr_log_message(“登陆失败”);elselr_log_message(“登陆成功”);优化是根据需要进行的。

4脚本验证1.在运行脚本前先进行编译查看有没有语法错误,看回放日志。

2.脚本在运行时存在错误,我们可以通过回放日志(replay log)来进行查看。

3.设置错误的输出如上面设置的检查点。

性能测试场景设计场景设计根据实际的业务情况来模拟用户,最好模拟用户的实际情况。

Run-time setting设置Ramp up初始化人数,During持续时间,Ramp down 减压初始化递减。

在运行前初始化所用用户checkbox应该勾上,在运行前初始化所用用户thinktime时间,要进行设置。

添加监控图我们可以根据实际情况,来添加服务器的系统资源监控。

我们需要在负载模拟其中添加服务器的监控参数。

查看运行时的数据可以查看运行时候的数据来观察系统情况。

Load Runner 关联函数1.什么是关联?2.为什么要进行关联?3.如何进行关联?对于关联有自动关联和手动关联两种,一般采用自动关联,对于关联一般我们要在脚本里,设置关联数据的存储大小。

一般在调试负载测试脚本中常见。

LoadRunner测试结果分析当性能测试结束后,我们将要进行结果分析,在分析之前我们要进行数据收集工作,点击控制面板第三个按钮。

我要注意服务器的性能,CPU使用率(processor time)、内存使用率(Available)、吞吐量常见Error解决办法1.Failed to Initialize. Reason: TimeOut虚拟用花初始化超时可以在controller-tools-timeout,修改command timeout(seconds), 可以解决初始化超时问题。

2.Error -27728: Step download timeout (120 seconds) has expired when downloading non-resource(s)解决方法:●在脚本中runtime setting选项中可以设置这个问题,runtime setting-internetprotocol-perferences-options advance 中设置默认为step download timeout的时间为最大。

●设置了runt time setting中的internet protocol-preferences中的advaced区域有一个winlnet replay instead of sockets选项,选择后再回放就成功了3.Error -27727: Step download timeout (120 seconds) has expired when downloading resource(s). Set the "Resource Page Timeout is a Warning" Run-Time Setting to Yes/No to have this message as a warning/error, respectively [MsgId: MERR-27727]Action.c(34): web_link("****") highest severity level was "ERROR", 14506915 body bytes, 547 header bytes [MsgId: MMSG-26388]Ending action Action.解决方法:4.vuser_init.c(19): Continuing after Error -27782: Timeout (120 seconds) exceeded whilewaiting to receive data for URL http://221.122.59.57:7005/chep解决方法:在Controller中,Tools-timeout修改修改command timeout(seconds),对于虚拟用户vuser 的值。

相关文档
最新文档