Loadrunner简单使用说明

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Loadrunner11.0简单使用Loadrunner的使用主要分为三部分:VirtualUserGenerator,Controller和Analysis。其中VirtualUserGenerator(虚拟用户生成器)主要用来创建脚本,并对脚本进行编辑优化;Controller(监控场景)主要用来设计和运行场景;Analysis(分析场景)用来对运行结果的数据进行分析。1.VirtualUserGenerator的使用1.1新建录制脚本1.2新建协议1.3开始录制脚本,输入URL地址1.4开始录制1.5结束录制1.6Run-timeSettings设置1.7脚本回放和查看回放结果对脚本进行保存后,开始对脚本进行编辑,包括常见的参数化,插入事务,插入集合点点,具体操作不做描述。2.创建和运行场景打开Tools-CreateControllerScenario点击“OK”进入监控场景2.1添加负载生成器负载生成器主要用来产生虚拟用户,既可以用本机产生,也可以借助别人的电脑产生,从而减少本机的压力(前提是对方的电脑已安装Loadrunner并开启LoadrunnerAgentProcess服务)。点击“Add”,在Name中如如负载生成器的IP,点击“OK”负载生成器添加后,点击“Connect”,Status的状态为Ready表明添加成功并可以正常使用,如果Status的状态为Failed表明连接失败,可以检查该IP对应的电脑上是否开启LoadrunnerAgentProcess。2.2设置监控场景双击GlobalSchedule下的Initialize行,开始对运行场景进行设置初始化Vuser的三种方式:点击“Next”,进入启动Vuser设置,有两种方式:设置好后,点击“Apply”,之后点击“Next”,进入持续Vuser设置,有两种方式:注:当选择第一种方式时,运行场景的设置到此结束;选择第二种时,需要进入下一步继续设置场景。点击“Next”,进入停止Vuser设置:设置完后点击“Apply”,场景设置完成。2.3设置集合点(Rendezvous)点击Scenario-Rendezvous,打开Rendezvous的设置窗口2.4监控系统资源点击“Run”,切换到运行场景窗口,系统资源默认为WindowsResource在WindowsResource下右键,点击AddMeasurements打开windowsresource的添加窗口点击“OK”,监控的服务器添加完成。默认添加的服务器计数器很多,可以根据需要,选择需要监控的计数器,计数器的添加如下图所示:添加完成后,在WindowsResource下可以看到计数器的运行情况,如下图所示:Linux和UNIX的系统资源添加和Windows的类似,只需要把AvailableGraphs中SystemResourceGraphs下的UNIXResources拖拽到WindowsResource下即可,其它的操作相同。设置好场景后,点击StartScenario,场景开始运行,可以看到相关的图形运行情况。运行完后,在WindowsResource下右键-Freeeze,冻结WindowsResource,这样导出的图表信息可以真实反映系统在运行时资源的使用情况。场景运行完后,点击Results下的AnalyzeResults,打开分析报表,如下图所示:分析报表中默认导出的图表只有5张,分别为:RunningVusers,HitsperSecond,Throughput,TransactionSummary和AverageTransactionResponseTime,如果需要查看其它的图表信息,点击Graphs,右键-AddNewItem-AddNewGraph...,这样,添加的图表就会显示在会话浏览器窗格。同时,也可以对图表进行合并,选择图表,右键-MergeGraphs在Selectgraphtomergewith下选择需要合并的图表,点击OK,这样合并后的图表就显示在会话浏览器窗格。在进行分析时,需要把结果导出,导出有两种方式:一种是Word格式,一种是Html格式。前两种的导出格式都是Word形式,第三种为Html形式。在导出的Html格式分析报告中,点击左侧的图表名称,右侧会相应的显示出图表的相关信息。4.windows资源计数器4.1Memory相关内存问题主要检查应用程序是否存在内存泄露。如果发生了内存泄露,Process\PrivateBytes计数器和Process\WorkingSet计数器的值往往会升高,同时AvailableBytes的值会降低。4.2Processor相关判断应用程序是否存在处理器瓶颈的方法:如果ProcessorQueueLength显示的队列长度保持不变(=2)个并且处理器的利用率%ProcessorTime超过90%,那么很有可能存在处理器瓶颈;如果ProcessorQueueLength显示的队列长度超过2,而处理器的利用率却一直很低,那么或许应该去解决处理器阻塞问题,这里处理器一般不是瓶颈。4.3磁盘相关判断磁盘瓶颈的方法是通过以下公式来计算:每磁盘的I/O数=[读次数+(4*写次数)]/磁盘个数如果计算出的每磁盘的I/O数大于磁盘的处理能力,那么磁盘存在瓶颈。4.4网络吞吐量及带宽Object(对象)Counters(计数器名称)Description(描述)参考值NetworkInterfaceBytesTotal/secBytesTotal/sec为发送和接收字节的速率,包括帧字符在内。判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较该计数器的值和目前网络的带宽相除,结果应小于50%WebServiceMaximumConnection、TotalConnectionAttemptsMaximumConnection:“最大连接数”是和Web服务同时建立起的最大连接数。TotalConnectionAttempts:“连接尝试总数”是从服务启动时利用Web服务尝试连接的总数。该计数器应用于全部所列的实例。附录:参数化设置选中要参数化的内容。方法一,右键---【Replacewithanewparameter】方法二,菜单【insert】----【newParameter…】ParameterProperties(参数属性对话框)----我们的参数化设置就通过这个对话框完成。参数化的方式:其实参数化得方式有很多种,这里简述几种比较常见人方式。其实方式略有不同,但其结果都是将数据添加进来。1、编辑数据点击CreateTable会出现表格,在表格,再次点击EditwithNotepad,然后会打开一个记事本,我们可以对记事本进行添加数据2、添加dat数据文件点击File输入框后面的“Browse..”按钮,找到本地的txt数据文件,进行添加就可以了。需要注意的是,文件里面的数据不要乱写,每条数据一行,不然会读取有误。3、数据库添加数据在很多情况下,我添加的数据不是十条二十条,也不是一百两百,如果还通过上面的两种方式添加,我想会是一件非常纠结的事情。所以我们可以通过数据库将数据导入。你是否疑虑数据库的数据怎么弄,数据库的数据生成非常简单,可以写一段简单的代码生成,也可以通过数据库数据生成工具来完成点击DateWizard打开连接数据库向导。4、其他类型设置如果我们要参数化的不是一个文件,比如是特定的日期时间,可以从Parametertype列表中进行选择这里可以设置日期时间格式,循环迭代方式,不过除了file类型外,其他用的不多。参数化之间的关联已经对用户名进行了参数化,或对密码进行了参数化,这样是不是脚本就能正常跑了,不好说。因为用户名和密码不是一一对应关系,每次运行脚本时取的用户名和密码没有对应上的话肯定就会出问题。假设已经对用户名已经进行了参数化,参数名为【username】,下面设置密码参数化与用户名关联。点击“Properites…”会打开编辑用户名参数化窗口。File列表框中,刚才保存用户名信息的文件username.dat。点击“AddColumn…”,添加新的一列信息,用于放置密码。点击“EditwithNotepad”再次编辑参数化数据文件,使用户名密码建立一一对应关系。完成之后,我们已经成功对用户名和密码进行了参数化,并且让用户名和密码形成了对应关系。数据分配与更新方式脚本设置完参数化,脚本运行的每一遍所取的参数化的值都不一样,那么这个值按照个什么情况来取呢?会有很多种方式Selectnextrow【选择下一行】:顺序(Sequential):按照参数化的数据顺序,一个一个的来取。随机(Random):参数化中的数据,每次随机的从中抽取数据。唯一(Unique):为每个虚拟用户分配一条唯一的数据Updatevalueon【更新时的值】:每次迭代(Eachiteration):每次迭代时取新的值,假如50个用户都取第一条数据,称为一次迭代;完了50个用户都取第二条数据,后面以此类推。每次出现(Eachoccurrence):每次参数时取新的值,这里强调前后两次取值不能相同。只取一次(once):参数化中的数据,一条数据只能被抽取一次。(如果数据轮次完,脚本还在运行将会报错)上面两个选项都有三种情况,如果将他们进行组合,将产生九种取值方式。SelectNextRow【选择下一行】UpdateValueOn【更新时的值】ReplayResult【结果】顺序(Sequential)每次迭代(Eachiteration)结果:分别将15条数据写入数据表中功能说明:每迭代一次取一行值,从第一行开始取。当所有的值取完后,再从第一行开始取如:如果参数化文件中有15条数据,而迭代设置为16次,那执行结果中,参数化文件第一行的数据有两条顺序(Sequential)每次出现(Eachoccurrence)结果:分别将15条数据写入数据表中功能说明:每迭代一次取一行值,从第一行开始取。当所有的值取完后,再从第一行开始取如:如果参数化文件中有15条数据,而迭代设置为16次,那执行结果中,参数化文件第一行的数据有两条顺序(Sequential)只取一次(once)结果:表中写入15条一模一样的数据。功能说明:每次迭代都取参数化文件中第一行的数据。随机(Random)每次迭代(Eachiteration)结果:表中写入15条数据,但可能有重复数据出现功能说明:每次从参数化文件中随机选择一行数据进行赋值随机(Random)每次出现(Eachoccurrence)结果:表中写入15条数据,但可能有重复数据出现功能说明:每次从参数化文件中随机选择一行数据进行赋值随机(Random)只取一次(once)结果:表中写入15条相同数据功能说明:第一次迭代时随机从参数化文件中取一行数据,后面每次迭代都用第一次迭代的数据。唯一(Unique)每次迭代(Eachiteration)自动分配块大小结果:分别将15条数据写入数据表中功能说明:第一次迭代取参数化文件中的第一条数据,第二次迭代取第二条数据,以此类推。注:如果设置迭代次数为16次。结果:在执行第16次迭代时会抛异常,异常日志可在LoadRunner的回放日志(replayLog)中看到。唯一(Unique)每次出现(Eachoccurrence)步长为1结果:分别将15条数据写入数据表中功能说明:第一次迭代取参数化文件中的第一条数据,第二次迭代取第二条数据,以此类推。注:如果设置迭代次数为16次,而参数化文件中只有15条数据,明显数据不够。此时可以设置“whenoutofvalues”属性来判断当数据不够时的处理方式AbortVuser:中断虚拟用户Countinueinacylicmanage:循环取参数化文件中的值,即:当参数化文件中的值取完后又从参数化文件的第一行开始取值。Countinuewithlastvalue:继续用最后一条数据唯

1 / 34
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功