loadrunner检测报告

2024-06-19

loadrunner检测报告(精选3篇)

篇1:loadrunner检测报告

loadRunner预研报告(一)预研目的 掌握如何使用LoadRunner进行压力测试;

 掌握如何通过LoadRunner的测试结果和分析报告来指导代码优化工作; 2 预研内容

 LoadRunner概况;

 LoadRunner的使用;

 LoadRunner使用的实例分析;

2.1 loadRunner概况

LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题。

LoadRunner 通过模拟一个多用户并行工作的环境来对应用程序进行负载测试。通过使用最少的硬件资源,这些虚拟用户提供一致的、可重复并可度量的负载,像实际用户一样使用所要测试的应用程序。LoadRunner 深入的报告和图提供了评估应用程序性能所需的信息。

2.1.1 LoadRunner主要部件组成Virtual User Generator(VuGen):虚拟用户生成器。

作用:通过录制应用程序中典型最终用户执行的操作来生成虚拟用户(Vuser)。VuGen 将这些操作录制到自动虚拟用户脚本中,以便作为负载测试的基础。

Controller:负载测试控制台

作用:它是用来创建、管理和监控负载测试的中央控制台。使用 Controller 可以运行用来模拟真实用户执行的操作的脚本,并可以通过让多个 Vuser(虚拟用户)同时执行这些操作来在系统中创建负载。

Analysis:测试结果分析平台

作用:提供包含深入的性能分析信息的图和报告。使用这些图和 报告,可以标识和确定应用程序中的瓶颈,并确定需要对系统进行哪些更改来提高系统性能。

2.1.2 LoadRunner术语

Vusers(虚拟用户):在场境中,LoadRunner用虚拟用户(virtual users or Vusers)来代替真实用户的操作。虚拟用户模拟真实用户的动作从而与你的应用程序进行交互。一个场境可以包括数

十、数百,甚至数千个虚拟用户。

Vuser Scripts(虚拟用户脚本):是场境中用来描述虚拟用户动作行为的脚本。

Transaction(事务):任意一个你想测量的终端用户操作的粒度。通过插入事务开始点和结束点来定义事务。

Rendezvous(集合点):为保证n个虚拟用户同时并发操作,需在并发操作前插入Rendezvous。

contents check(文本检查点):在进行压力测试时,为了检查Web 服务器返回的网页是否正确,这些检查点验证网页上是否存在指定的Text 或者Image,还可以测试在比较大的压力测试环境中,被测的网站功能是否保持正确。

Parameter(参数化):用参数替换已录制的值。

Think time(思考时间):用户在执行两个连续操作期间等待的时间。

Scenarios(场景):基于性能需求定义在每次测试会话中发生的事件。

篇2:loadrunner检测报告

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

一. 什么是LoadRunner LoadRunner是一种预测系统行为和性能的工业标准级负载测试工具。通过以模拟多个用户实施并发负载测试及实时性能检测的方式来确认和查找问题,能对整个企业架构进行测试。

二. 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部分。比如录制投保业务时,登陆系统部分放入vuser_init,退出登陆放到vuser_end,中间的投保操作放到Action中,则循环执行时就会登陆一次投保系统开始反复执行投保操作直到结束退出系统。

第七个为用来改变录制的options设置按钮

第八个和第九个为插入事务的起始点和结束点键,结合起来构成一个完整事物,用来衡量服务器的性能。比如录制脚本过程中,投保系统的查询投保单号操作,可以在输入完查询信息后点击查询按钮前插入事务的起始点,查询出数据后插入事务的结束点,这样在运行测试脚本时,Loadrunner在运行到该事务时,便会计算出这个查询操作所花时间,便于衡量服务器执行查询操作的性能。

第十个为插入集合点键,可用于衡量在加重负载的情况下服务器的性能。比如要验证系统是否能承受100人同时进行报案操作,便可在脚本录入过程中,点击报案确认键操作前插入集合点,这样当脚本运行到集合点时,Loadrunner会让100个虚拟用户同时点击报案确认按钮(如果有的用户还没运行到集合点,先到用户要等未到用户一起操作)进行报案,从而达到测试目的。

最后一个为设置验证点键,在创建事物后,设置一个验证点可以用来确认事物执行是否成功。比如进行查询事务操作时,LR只要检测到网页的响应,就认为事务pass,而不管显示页面内容是否正确。因此为了检查Web服务器返回的网页是否正确,可以插入Text/Image检查点,验证网页上是否存在指定的Text或Image。

设置验证点时,如果我们验证的文本内容是中文,有时会返回无法找到验证内容的报错信息,而页面显示又是正确的,出现问题的原因可能是因为LR对中文的支持部好,尽量选择验证信息为数字或字母;也可能是设置问题,可以尝试将Tools->Recording Options->HTTP Properties下的Advanced选项里设置支持UTF-8,再检查开发人员有没有设置支持中文。

录制结束后,先点击保存脚本,同时为脚本命名。然后编译脚本,看是否存在语法错误,编译成功后,即可回放,看录制脚本是否成功。

LoadRunner录制得到的脚本基本没有错误,不像robot会有录入数据的缺失,只是会录入一些非录入系统的网页信息,根据地址可以识别并删除掉。

四. LoadRunner脚本录制学习小结

1.LoadRunner录制脚本,主要是为了进行压力测试,所以跑流程时,跑了主要流程即可,也就是系统必须的信息录入就可以了。2.LoadRunner的脚本运行过程中,只能用于一次业务办理的数据需要做参数化,如车辆车架号,车牌,报案号等,以免出现重复投保或报案无法立案现象,不能继续进行下去。参数化步骤:

1)将需要做参数化的数据右键点击,选择Replace with a parameter,进行设置。2)在弹出编辑框里,设置易懂的参数名称,再点击Properties进行属性设置。3)点击Create Table 按钮,生成参数表格,再点击Edit with Notepad按钮,即可在记事本里添加新的参数,添加完后再次回车(不回车可能最后条数据读取不到)关闭,参数化操作完成。

4)使用Ctrl +H键可以找到替换同样的需要参数化的数据。

3.脚本跑流程过程中,因为业务运转,前面生成的投保单要接着进行提交核保业务,而每次生成的投保单号不一样,用于进行提交核保的单号也要与之前的保持一致,因此需要做关联处理,读取到生成的新投保单号给提交核保流程。关联步骤:

1).查找关联数据第一次出现的位置,判断该数据是由什么函数返回的。

2).在树形结构里点击返回该数据值的函数,看它的Server Response信息,用复制的关联数据进行查找它的返回语句,找到区分度明显的语句(不一定要是第一个返回语句),然后使用web_reg_save_param函数进行关联。

注:关联函数一定要写在第一个返回该数据值的函数前。

3).web_reg_save_param(const char *ParamName, , LAST);

函数的第一个参数是用来对关联数据进行定义的,取名最好可读性强;第二个参数是用来标识关联数据在返回语句里的具体位置的,写出该数据的左右边界,程序才能识别;LAST表示属性列的结束。比如办理理赔业务的流程号,在服务器的返回语句里是:

做关联为:

web_reg_save_param(“LogFlowID”,“LB=name=flowID type=”hidden“ value=”,“RB=>”,LAST);定义的参数名就叫LogFlowID,表示流程号,易于明白;左边界从name取就可以标识了,也可取长点或短点,只要能区分;右边界只有>,写上就好;最后写上LAST。

在定义的左右边界中,如果有双引号,在脚本中是需要转义的,因为双引号在C中是有意义的,这里只要表示语句信息,加上右斜杠。尖括号直写。

左右边界也需要用双引号括起来。定义好的参数写在程序中,需要在加上单尖括号:swfLogFlowID={LogFlowID} 五. 脚本执行过程中的报错处理

1.vuser_init.c(3051): Error-26377: No match found for the requested parameter “proposalNo”.Check whether the requested boundaries exist in the response data.Also, if the data you want to save exceeds 256 bytes, use web_set_max_html_param_len to increase the parameter size [MsgId: MERR-26377] 2.vuser_init.c(3051): web_submit_data(“UIPrPoEnInputNext.jsp”)highest severity level was “ERROR”, 4312 body bytes, 258 header bytes [MsgId: MMSG-26388]

两个错误一起出现,出错语句都是在关联函数下的提交数据函数位置,但是具体出错有可能是:

1).关联函数左右边界没写对,所有信息都要用字符输入,不能是中文或其他。

2).在关联函数确认写对的情况下,看提交数据函数中的业务设置,比如有可能是因为保单查询语句,设置的查询时间是过去的时间,新生成的投保单当然查不到,这样程序也会报这样的错。

3.loadrunner 执行理赔的立案处理,录制好脚本后,回放,报错:

脚本日志信息提示:

1.Action.c(400): Error-26366: “Text=立案信息提交成功” not found for web_reg_find [MsgId: MERR-26366] 2.Action.c(400): web_submit_data(“claimSave.do”)highest severity level was “ERROR”, 4424 body bytes, 258 header bytes [MsgId: MMSG-26388] 脚本执行过程停止在立案信息提交页面,错误原因:数据问题,可能是有的应该变化的信息没有变。

在该流程中,一个报案号只能做一次立案,而初始脚本没有设置参数、关联,使用保单号进行查询,错误被掩盖。在立案系统中,一个保单号可以重复报案,但是一个报案号只能一次立案,要跑通流程,需要先将这一保单再重复报案,得到新的报案号。

六. 性能测试的场景设置

脚本录制完毕后,接着准备测试场景。1.首先准备测试数据。比如车险投保,需要投保人和车架号信息来唯一标识一辆被保车,因此就需要将投保人和车架号做参数化处理,编辑文本框录入大量数据让脚本唯一读取:

1).录入投保人参数,车架号参数,过程同脚本录制的参数化处理

2).因为投保人和车架号一起生成一条投保数据,可设置车架号随投保人参数一起读取,设置步骤为:

投保人文件存放路径--File path

投保人参数数据读取方式

脚本按列名读取参数,每行数据读取一次,每次循环取一次新值。接着设置车架号参数信息:

车架号参数读取文件路径设为和投保人文件路径一样

脚本按列名读取参数,行号选择和读取的投保人数据同一行

这样得到所需的投保单生成参数数据

2.设置测试场景

点击Tools->Create Controller Scenarios,弹出场景类型选择框:

录入需要的虚拟用户数,选择生成结果存放路径和组名。确定后进入具体设置页面:

Quantity表示虚拟用户个数,group name为组名。

1).设置运行时间选项Run – time Settings

选择循环次数Run Logic->Iteration Count,设置循环10次,虚拟用户数为之前设置的5人,则预计一共可生成50张投保单。

设置思考时间,思考时间通常是录制脚本过程中,填写页面信息花费的时间,选择忽略项,节省跑脚本的时间。

设置网络连接时间,点击网络协议项Internet Protocol 的Options键,将弹出页面里的HTTP-request connect timeout和 HTTP-request receive timeout的数值改为1000。使得能在网络状况不太好的情况下向服务器发送接收数据。

2).设置Edit Schedule

选择虚拟用户加载方式:

可以一次加载所有用户,也可以按需要设置,一秒加载一个用户或其他。

选择结束方式:

当选择一秒加载一个用户时,结束设置为直到跑完所有脚本停止执行。如果选择选择一次加载所有用户可以选择运行多少时间后停止和不停止选项。

这些设置完成后,一次测试场景布置完成。可以进行基线检查或单点并发测试。

七. 性能测试步骤

一).除测试工具外性能测试必备的系统及业务知识

1、熟悉保险行业业务特点,有助于与开发和客户讨论需求,制定测试用例;

2、熟悉系统的实现特点,开发实现方式,有助于选择程序处理复杂、消耗系统资源的用例点;

3、熟悉数据结构,了解数据存储规则,对脚本调试、数据准备、测试执行和监视都有帮助;

4、熟悉系统所使用的数据库、操作系统、中间件的监视和性能问题查看,有助于测试监视和发现问题;

5、熟悉系统架构及系统集成方式,有助于分析及明确定位性能问题。

二)性能测试执行过程 1.基线检查

1).目的:验证环境是否可用;

验证脚本是否能在场景正常执行。

2).方法:1个人单独循环5次--没有其他人干扰,干净的环境

3).结果:一般一个事物的响应时间超过3秒就可能存在问题,要提报开发人

2.单点并发

1).目的:为了快速的发现问题,如多进程的锁机制,看是否相互间有影响。2).方法:一般是10人或20人执行10到15分钟,执行过程忽略思考时间。

忽略思考时间可以减少客户端时间,加快向服务器传送数据速度,很大程度上增大了服务器的压力,20个人单点并发的压力就相当于200人正常执行带给服务器的压力。

3).单点测试的数据可以用来进行混发测试,但是有可能单点测试的数据不足以进行混发,需要自己再准备足够的数据。

3.方案测试--混发测试

1).目的:模拟生产环境

2).方法:执行1小时左右,加上思考时间

八.资源监控及调优

性能测试执行过程中,需要监控系统各项资源,看是否能满足用户实际需要,如内存使用,SQL SERVER等,结合LR生成的分析报告,分析系统哪里可能存在问题,需要改进,进行调优,这也是我之后要接着进行学习的地方。

1.学习使用weblogic,了解weblogic常配参数的意义。通过weblogic自身的监控台,可以了解到目前的JVM的大小、数据库连接池的使用情况以及目前连接的客户端数量以及请求状况等等。

2.学习oracle使用,熟悉它的体系结构,尤其是oracle10里 的awr,awr能采集与统计数据,并从那些统计数据中导出性能量度,以跟踪潜在的问题。

篇3:loadrunner检测报告

做负载或者压力测试时,很多人选择使用了Loadrunner测试工具。该工具的基本流程是先将用户的实际操作录制成脚本,然后产生数千个虚拟用户运行脚本(虚拟用户可以分布在局域网中不同的PC机上),最后生成相关的报告以及分析图。但是在录制脚本的过程中会遇到很多实际的问题,比如不同的用户有不同的使用数据,这就牵涉到参数的设置问题。本文就Loadrunner中参数的设置进行说明,希望对大家有所帮助。

在录制程序运行的过程中,VuGen(脚本生成器)自动生成了包含录制过程中实际用到的数值的脚本。如果你企图在录制的脚本中使用不同的数值执行脚本的活动(如查询、提交等等),那么你必须用参数值取代录制的数值。这个过程称为参数化脚本。

本文主要包括如下内容:理解参数的局限性、建立参数、定义参数的属性、理解参数的类型、为局部数据类型设置参数的属性、为数据文件设置参数的属性、从已经存在的数据库中引入数据。

除了GUI,以下的内容适合于各种类型的用户脚本。

一、关于参数的定义

在你录制程序运行的过程中,脚本生成器自动生成由函数组成的用户脚本。函数中参数的值就是在录制过程中输入的实际值。

例如,你录制了一个Web应用程序的脚本。脚本生成器生成了一个声明,该声明搜索名称为“UNIX”的图书的数据库。当你用多个虚拟用户和迭代回放脚本时,也许你不想重复使用相同的值“UNIX”。那么,你就可以用参数来取代这个常量。结果就是你可以用指定的数据源的数值来取代参数值。数据源可以是一个文件,也可以是内部产生的变量。

用参数表示用户的脚本有两个优点: ① 可以使脚本的长度变短。

② 可以使用不同的数值来测试你的脚本。例如,如果你企图搜索不同名称的图书,你仅仅需要写提交函数一次。在回放的过程中,你可以使用不同的参数值,而不只搜索一个特定名称的值。

参数化包含以下两项任务:

① 在脚本中用参数取代常量值。② 设置参数的属性以及数据源。

参数化仅可以用于一个函数中的参量。你不能用参数表示非函数参数的字符串。另外,不是所有的函数都可以参数化的。

二、参数的创建

可以指定名称和类型来创建参数。不存在对脚本中参数个数的限制。在Web程序的用户脚本中,你可以使用如下过程在基于文本的脚本视图中创建参数。或者,也可以在基于图标的树形视图中创建参数。

在基于文本的脚本视图中创建一个参数:

1、将光标定位在要参数化的字符上,点击右键。打开弹出菜单。

2、在弹出菜单中,选择“Replace with a Parameter”。选择或者创建参数的对话框弹出。

3、在“Parameter name”中输入参数的名称,或者选择一个在参数列表中已经存在的参数。

4、在“Parameter type”下拉列表中选择参数类型。

5、点击“OK”,关闭该对话框。脚本生成器便会用参数中的值来取代脚本中被参数化的字符,参数用一对“{}”括住。

注意:在参数化CORBA或者General-Java 用户脚本的时候,必须参数化整个字符串,而不是其中的部分。另外注意:除了Web或者WAP,缺省的参数括号对于任何脚本都是“ {}”。你可以在“General Options”对话框中的“Parameterization”标签(Tools>General Options)中定义参数括号种类。

6、用同样的参数替换字符的其余情况,选中参数,点击右键,弹出菜单。从弹出的菜单中,选择“Replace More Occurrences”。搜索和替换对话框弹出。“Find What”中显示了你企图替换的值。“Replace With”中显示了括号中参数的名称。选择适当的检验框来匹配整个字符或者大小写。如果要搜索规则的表达式(.,!,?等等),选中“Regular Expression”检验框,然后点击“Replace”或者“Replace All”。

注意:小心使用“Replace All”,尤其替换数字字符串的时候。脚本生成器将会替换字符出现的所有情况。

7、如果想用以前定义过的参数来替换常量字符串的话,选中该字符串,点击右键,然后选择“Use Existing Parameter”,子菜单“Use Existing Parameters”弹出。从子菜单“Use Existing Parameters”选择参数,或者用“Select from Parameter List”来打开参数列表对话框。

注意:如果用以前定义过的参数来替换常量字符串的话,那么,使用“Parameter List”非常方便。同时,还可以查看和修改该参数的属性。

8、对于已经用参数替换过的地方,如果想取回原来的值,那么,就在参数上点击右键,然后选择“Restore Original value”。

在Web用户脚本的树形视图中创建参数:

1、将光标定位在企图参数化的地方,点击右键,从弹出的菜单中选择“Properties”。则相关的属性对话框打开。

2、点击在要参数化的参量的旁边的“ABC”形状的图标。“Select or Create Parameter”对话框打开。

3、在“Parameter name”中输入参数的名称,或者从列表中选择一个已经存在的参数。

4、在“Parameter type”中输入参数的类型。

5、点击“OK”关闭该对话框。用户脚本生成器会用参数来替换最初的字符串常量,并用一个表格形状的图标替换“ABC”形状的图标。

6、要恢复参数化以前的值,点击图标,然后从弹出的菜单中选择“Undo Parameter”,则以前的值便会重现。

三、定义参数的属性

创建参数完成后,就可以定义其属性了。参数的属性定义就是定义在脚本执行过程中,参数使用的数据源。在Web用户脚本中,你既可以在基于文本的脚本视图中定义参数属性,也可以在基于图标的树形视图中定义参数属性。下面的过程将教你如何在基于本文的脚本视图中定义参数属性。

在基于文本的脚本视图中定义参数属性步骤:

1、在参数上点击右键,有菜单弹出。

2、在弹出的菜单中,选择“Parameter Properties”。参数属性对话框打开,显示和当前参数类型相关的属性。

3、输入参数的属性值。

4、点击“Close”关闭参数属性对话框。

在Web用户脚本的树形视图中定义参数的属性:

1、将关标定位在参数上,然后点击右键,选择“Properties”。属性对话框打开。

2、点击要定义属性的参数旁边的表格形状按钮,点击右键,选择“Parameter Properties”。参数属性对话框打开,和参数类型相关的属性显示出来。

3、输入参数的属性。

4、点击“Close”关闭参数属性对话框。

使用参数列表:

使用参数列表可以在任意时刻查看所有的参数,创建新的参数、删除参数,或者修改已经存在参数的属性。

1、点击参数列表按钮或者用“Vuser>Parameter List”。参数列表对话框打开。

2、要创建新的参数,点击“New”按钮。新的参数则被添加在参数树中,该参数有一个临时的名字,你可以给它重新命名,然后回车。设置参数的类型和属性,点击“OK”,关闭参数列表对话框。

注意:不要将一个参数命名为“unique”,因为这个名称是用户脚本生成器本身的。用户脚本生成器创建新的参数,但是不会自动用该参数在脚本中替换任意选中的字符串。

3、要删除已有的参数,那么,要先从参数树中选择该参数,点击“Delete”,然后确认你的行为即可。

4、要修改已有参数,那么,要先从参数树中选择该参数,然后编辑参数的类型和属性。

四、理解参数的类型

在你定义参数属性的时候,要指定参数值的数据源。你可以指定下列数据源类型的任何一种:

Internal Data―― 虚拟用户内部产生的数据。

Data Files ――存在于文件中的数据。可能是已存在的文件或者是用脚本生成器新创建的。User-Defined Functions―― 调用外部DLL函数生成的数据

Internal Data包括以下几种:

1、Date/Time

Date/Time用当前的日期/时间替换参数。要指定一个Date/Time格式,你可以从菜单列表中选择格式,或者指定你自己的格式。这个格式应该和你脚本中录制的Date/Time格式保持一致。

2、Group Name

Group Name 用虚拟用户组名称替换参数。在创建scenario的时候,你可以指定虚拟用户组的名称。当从用户脚本生成器运行脚本的时候,虚拟用户组名称总是None。

3、Load Generator Name

Load Generator Name用脚本负载生成器的名称替换参数。负载生成器是虚拟用户在运行的计算机。

4.Iteration Number

Iteration Number用当前的迭代数目替换参数。

5、Random Number

Random Number用一个随机数替换参数。通过指定最大值和最小值来设置随机数的范围。

6、Unique Number

Unique Number用一个唯一的数字来替换参数。你可以指定一个起始数字和一个块的大小。

7、Vuser ID

Vuser ID用分配给虚拟用户的ID替换参数,ID是由Loadrunner的控制器在scenario运行时生成的。如果你从脚本生成器运行脚本的话,虚拟用户的ID总是-1。

五、数据文件

数据文件包含着脚本执行过程中虚拟用户访问的数据。局部和全局文件中都可以存储数据。可以指定现有的ASCII文件、用脚本生成器创建一个新的文件或者引入一个数据库。在参数有很多已知值的时候数据文件非常有用。数据文件中的数据是以表的形式存储的。一个文件中可以包含很多参数值。每一列包含一个参数的数据。列之间用分隔符隔开,比如说,用逗号。

对数据文件设置参数属性

如果使用文件作为参数的数据源,必须指定以下内容:文件的名称和位置、包含数据的列、文件格式,包括列的分隔符、更新方法。

如果参数的类型是“File”,打开参数属性(Parameter Properties)对话框,设置文件属性如下:

1、在“File path”中输入文件的位置,或者点击“Browse”指定一个已有文件的位置。缺省情况下,所有新的数据文件名都是“parameter_name.dat”,注意,已有的数据文件的后缀必须是.dat。

2、点击“Edit”。记事本打开,里面第一行是参数的名称,第二行是参数的初始值。使用诸如逗号之类的分隔符将列隔开。对于每一新的表行开始一行新的数据。

注意:在没有启动记事本的情况下如果想添加列,就在参数属性对话框中点击“Add Col”,那么“Add new column”对话框就会弹出。输入新列的名称,点击“OK”。脚本生成器就会添加该列到表中,并显示该列的初始值。

3、在“Select Column”部分,指明包含当前参数数据的列。你可以指定列名或者列号。列号是包含你所需要数据的列的索引。列名显示在每列的第一行(row 0)。

4、在“Column delimiter”中输入列分隔符,你可以指定逗号、空格符等等。

5、在“First data line”中,在脚本执行的时候选择第一行数据使用。列标题是第0行。若从列标题后面的第一行开始的话,那就在“First data line”中输入1。如果没有列标题,就输入0。

6、在“Select next row”中输入更新方法,以说明虚拟用户在脚本执行的过程中如何选择表中的数据。方法可以是:连续的、随机的、唯一的、或者与其它参数表的相同行。

6.1、顺序(Sequential):该方法顺序地给虚拟用户分配参数值。如果正在运行的虚拟用户访问数据表的时候,它会取到下一行中可用的数据。

6.2、随机(Random):该方法在每次迭代的时候会从数据表中取随机数

6.3、使用种子取随机顺序(Use Random Sequence with Seed):如果从Loadrunner的控制器来运行scenario,你可以指定一个种子数值用于随机顺序。每一个种子数值在测试执行的时候代表了一个随机数的顺序。无论你何时使用这个种子数值,在scenario中同样的数据顺序就被分配给虚拟用户。如果在测试执行的时候发现了一个问题并且企图使用同样的随机数序列来重复测试,那么,你就可以启动这个功能(可选项)。

6.4、唯一(Unique):Unique方法分配一个唯一的有顺序的值给每个虚拟用户的参数。

6.5、与以前定义的参数取同一行(Same Line As

):该方法从和以前定义过的参数中的同样的一行分配数据。你必须指定包含有该数据的列。在下拉列表中会出现定义过的所有参数列表。注意:至少其中的一个参数必须是Sequential、Random或者Unique。如果数据表中有三列,三个参数定义在列表中:id1,name1和title1,如下:。ID Name Title 132 Kim Manager 187 Cassie Engineer 189 Jane VP 对于参数id1,你可以指示虚拟用户使用Random方法,而为参数name1和title1就可以指定方法“Same Line as id1”。所以,一旦ID“132”被使用,那么,姓名(Name)“Kim”和职位(Title)“Manager”同时被使用。

7、Updta value on数据的更新方法

7.1、Each iteration――每次反复都要取新值

7.2、Each occurrence――只要发现该参数就重新取值

7.3、Once――在所有的反复中都使用同一个值

8、When out of values超出范围:(选择数据为unique时才可用到)

8.1、Abort Vuser――中止

8.2、Continue in a cyclic manner――继续循环取值

8.3、Continue with last value――取最后一个值

9、Allocate Vuser values in the Controller在控制器中分配值:(选择数据为unique时才可用到)

9.1、Automatically allocate block size――自动分配

9.2、Allocate()values for each Vuser――指定一个值

六、从已存在的数据库中导入数据

Loadrunner允许你利用参数化从已经存在的数据库中导入数据。可以使用下列两种方式之一:

1、使用Microsoft Query(要求在系统上先安装MS Query)。

2、指定数据库连接字符串和SQL语句。

用户脚本生成器在从数据库中导入数据的过程中提供了一个向导。在向导中,你指明如何导入数据-通过MS Query创建查询语句或者直接书写SQL语句。在导入数据以后,以.dat为后缀并作为正规的参数文件保存。要开始导入数据库中数据的过程,在参数属性对话框中点击“Data Wizard”,则,数据库查询向导弹出。

要创建新的查询

1、选择“Create new query”。如果需要MS Query“Show me how to use Microsoft Query”,然后点击“Finish”。的帮助,选择如果你还没有安装Microsoft Query,Loadrunner会提示你这个功能不可用。在进行之前,从Microsoft Office中安装MS Query。

2、在Microsoft Query中遵循以下步骤,导入期望的表和列。

3、在完成数据的导入后,选择“Exit and return to Virtual User Generator”,然后点击“Finish”。在参数属性对话框中数据库记录以data文件的形式显示出来。要在MS Query中编辑并查看数据,选择“View data or edit in Microsoft Query”。若要结束,则选择“File>Exit and return to Virtual User Generator”返回到脚本生成器。

4、在“Select Column”部分,指定包含当前参数数据的列可以指定列号或者列名。注意:列标题默认为第0行(row 0)。

5、从“Select next row”列表中选择一个更新方法来告诉虚拟用户在脚本指定的过程中如何选择表中的数据。可选项是:Sequential、Random、Unique或者Same Line As。其中每一项的含义文章前面已经讲述,就不再赘述。

6、如果选择“Advance row each iteration”,虚拟用户在每次迭代的时候会使用新的一行的数据而不是重复同样的数据。

要指定数据库连接或者SQL语句

1、选择“Specify SQL Statement”,然后点击“Next”。

2、点击“Create”指定一个新的连接字符串。选择数据源的窗口弹出。

3、选择已有的数据源,或者点击“New”创建一个新的数据源。向导将提示你穿过创建ODBC数据源的过程。在完成后,连接字符串就会在连接字符串框中显示出来。

4、在SQL框中,输入或者粘贴SQL语句。

5、点击“Finish”继续SQL语句并导入数据。数据库记录将以data文件的形式显示在参数属性框中。

6、在“Select Column”部分中,指定包含当前参数数据的列。你可以指定列号或者列名。

7、从“Select next row”列表中选择一个更新方法来告诉虚拟用户在脚本指定的过程中如何选择表中的数据。可选项是:Sequential、Random、Unique或者Same Line As。

8、如果从Update out of values中,选择“each iteration”,虚拟用户在每次迭代的时候会使用新的一行的数据而不是重复同样的数据。

补充: 第一点:在选用Unique是,在“选择下一行”选择:”each iteration"的时候可以选择“自动分配”和“分配给每个用户”;但是选择“Each occurrence的时候,只能选择”分配给每个用户“; 第二点:each iteration和Each occurrence的区别,前者表示每次迭代,后者表示每次循环;迭代是可以在脚本中”运行设置中进行设置的,参数只有在脚本调用的时候才会更新,循环是只要脚本调用一次就会重新取一次参数,比如用for循环在脚本中实现的循环,如果选择“迭代”参数只能选择一个,而选择循环,则可以更新参数;

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【loadrunner检测报告】相关文章:

loadrunner报告07-05

LoadRunner06-14

loadrunner简介与使用06-19

LoadRunner测试SQL语句性能07-27

检测报告目录05-24

检测报告范文05-16

骨料检测报告04-25

墙砖检测报告05-01

核酸检测报告05-01

涂料检测报告05-11

上一篇:计算机网络第五章习题下一篇:文案策划的自我提升