|
做服务器压力测试的好工具,正在研究中。光依赖测试组是不行的,达不到要求。
一、概述
LAODRUNNER8.1 作为专业的性能测试工具,通过模拟成千上万的用户对被测应用进行操作和请求,在实验室环境中精确重现生产环境中任意可能出现的业务压力,然后通过在测试过程中获取的信息和数据来确认和查找软件的性能问题,分析性能瓶颈.
LOADRUNNER提供了三个大主要模块,这三个模块既可以作为独立的工具分别完成各自的功能,又可以作为LOADRUNNER的一部分彼此衔接,与其他模块共同完成软件性能的整体测试.这三大模块主要是:
Ø
VITUAL USER GENERATOR--------用于录制脚本
Ø
MERCURY LOADRUNNER CONTROLLER---------用于创建,运行和监视场景
Ø
MERCURY LOADRUNNER ANALYSIS--------用于分析测试结果;
二、LOADRUNNER8.1 安装
LAODRUNNER8.安装过程比较简单,只需按系统的提示一步一步操作就可以了,这里对安装过程中的一些要点进行简要的说明.
Ø
安装类型
安装盘内有两个盘片,MERCURY LOADRUNNER8.1和MECURY LOADRUNNER 8.0ADD-INS.前者包括了LR安装程序及常用组件,后者全部为组件,各组件的作用在安装盘中都有详细的提示.
Ø
LICENSE 类型
LICENSE类型说明如下:
PERMANENT
永不过期的LICENSE;
TIME LIMITED
限定了使用的起始时间和使用周期;
TEMPORARY
从安装后开始计算,限定了使用的天数;
VUD-BASED
限定了虚拟用户数量
PLUGGED
需要DONGLE,也就是HARDWARE KEY,DONGLE在中国被音译为“狗”,主要是防止软件被盗用
Ø
RPM和WEB SERVER之间的鉴权
如果在安装时选择安装REMOTE PERFORMANCE MONITOR SERVER,LOADRUNNER会弹出一个要求输入用户名和密码的对话框,
REMOTE PERFORMANCE MONITOR SERVER是一个远程监视场景的服务器,为测试人员提供WEB化的场景页面,用于实现多台及其通过浏览器同时在线监视场景.这里设定用户名和口令的目的主要是为了REMOTE PERFORMANCE MONITOR(RPM)和运行了IIS的WEB SERVER之间进行鉴权.在RPM安装完毕之后,只有在LOADRUNNER CONTROLLER的RPM用户配置对话框中输入指定的用户名和口令,系统才能允许进行远程监控.
Ø
设定LOADRUNNER GENERATOR如何登陆到CONTROLLER
LOADRUNNER提供了两种方式让LOAD GENERATOR的虚拟用户登陆到CONTROLLER,
n
ALLOW VIRTUALUSERS TO RUN ON THIS MACHINE WITHOUT USER LOGIN
n
MANUAL LOG IN TO THE LOAD GENERATOR MACHINE
三、使用VITUAL USER GENERATOR录制开发脚本
LOADRUNNER脚本的开发过程一般需要以下几个过程
Ø
使用LOADRUNNER的VIRTUAL USER GENERATOR录制基本的测试脚本;
Ø
根据系统需求编辑测试脚本,看能否通过,
Ø
在单机模式下运行脚本看能否通过,
1.选择协议要想正确的选择LOADRUNNER的脚本协议,首先要从LOADRNNER的工作原理上深入理解协议的作用和意义。LOADRUNER启动后,在任务栏上会有一个LOADRNNER AGENT PROCESS的进程,这个进程的一项重要的工作就是监视各种协议的客户端和服务器端的通信。只要是能够支持的协议,LOADRUNNER在录制的过程中就可以通过脚本语言将通信过程录制下来。所以只要明确了被测软件的通信过程和所使用的协议,LOADRUNNER才能正确的录制脚本。对于常见的应用软件,我们可以根据被测应用是B/S结构还是C/S结构来选择协议; Ø
对于B/S结构,可以选择WEB(HTTP/HTTML)协议;
Ø
对于C/S结构,可以根据后端数据库的类型来选择,如SYBASECTLIB协议用于测试后台数据库为SYBASE的应用,MS SQL SERVER协议用于测试后台数据库为SQL SERVER的应用;
Ø
对于没有数据库的WINDOWS应用,可以选择WINDOWS SOCKETS这个底层的协议;
这里需要说明的是,无论使用哪种协议,LOADRUNNER的测试流程都基本是一样的,只有在设定细节上有所不同,测试人员只要对被测应用的技术架构熟悉了,就能够成功完成脚本的录制。
2.录制测试脚本根据需求设定好脚本录制参数后,在VIRTUAL USER GENERATOR主窗口单击START RECORD按钮,系统就开始自动录制脚本。
Ø
理解脚本的三个部分;
LOADRUNNER 将测试脚本分为3个部分,VUSER_INIT,VUSER_END和ACTION,其中VUSER_INIT和VUSER_END一般用于存放应用程序初始化的脚本和注销关闭的脚本,在重复执行的时候,这两部分的内容只执行一次.而ACTION部分用于存放实际的操作脚本,这部分脚本可以多次执行,测试人员还可以根据需要创建多个ACTION 脚本,但不能创建VUSER_INIT和VUSER_END.
Ø
熟悉录制脚本工具栏;
在录制的过程中屏幕上有一个悬浮的工具栏,这是控制脚本录制的工具栏,是脚本录制过程中测试人员和VUGEN交互的主要平台,每个可用的按钮都可以执行相应的操作;
Ø
查看脚本;
n
SCRIPT VIEW:查看全部的脚本;
n
TREE VIEW:查看从每个URL获取来的页面;
3.开发测试脚本Ø
插入事务
有时侯测试人员根据项目需要,除了要衡量整个测试脚本的性能外,还想获取到脚本中的某一段和几段操作的性能数据;以便更详细的知道具体的是用户的哪些动作对性能的影响比较大.LOADRUNNER采用在脚本中定义事务来达到这一要求.
所谓事务(TRANSACTION),就是在脚本定义中定义的某段操作(ACTION),更确切的说,就是一段脚本语句.定义事务时,首先在脚本中找到事务的开始和结束位置,然后分别插入一个事务起始标记,这样,当脚本运行的时候,LOADRUNER会自动在事务的起始点计时,脚本在运行到事务结束点时计时结束,系统会自动记录这段操作的运行时间等性能数据;在脚本运行完毕后,系统会在结果信息中单独反映每个事务运行结果.
事务的插入操作可以在脚本运行过程中进行,也可以在脚本录制完毕后进行,建议在脚本录制完毕后进行.
n
定位事务语句的集合
n
插入事务起始点语句
将光标放置在欲定义事务的语句集合中第一条语句的上面一行,单击工具栏上的INSERT START TRANSACTION按钮,输入事务名称后,单击OK按钮,系统自动在脚本语句中插入如下语句:
LR_START_TRANSACTION(“事务名称”)
n
插入事务结束点语句
将光标放置在欲定义事务的语句集合中最后一条语句的后面一行,单击工具栏上的INSERT END TRANSACTION按钮,输入事务名称后,单击OK按钮,系统自动在脚本语句中插入如下语句:
LR_END_TRANSACTION(“事务名称“)
Ø
插入集合点
多用户同时加载并发,并发过程仅仅体现在开始执行的那一刹那,随着服务器对请求的响应时间的不一致或系统环境条件的限制,在运行过程中能集合到一点的可能性微乎其微,所以将一定数量的用户同时加载并不是真正意义上的并发.
系统压力最大的情况是:所有用户都集中到系统瓶颈的某个点上进行操作,从脚本的角度来讲,这个点就是执行脚本的某一条或一段语句,为了真实模拟这个最坏的情况,查看系统在最坏情况下的反映,LOADRUNNER提供了集合点的功能,帮助测试人员实现真正意义上的并发.
使用LOADRUUNER实现集合点功能的方法如下:
n
在脚本准备访问的语句上面插入一个空白行,并将光标移到该空白行上;
n
选择INSERT|RENDEZVOUS命令,系统弹出RENDEZVOUS对话框,
n
输入集合点名称后点击OK按钮.
系统会自动在脚本中插入下面语句
LR_RENDEZVOUS(“集合点名称”)
这样的脚本在运行的时候,就可以在集合点处实现真正的并发了.运行带有集合点的脚本时可以在SCENARIO GROUP列表的RENDEZ一栏看到虚拟用户的聚集过程.
需要说明的是,这部分内容仅介绍了如何在LOADRUNNER的脚本中插入集合点,LOADRUNNER允许测试人员对集合点的执行过程进行更详细的设定,如聚集的用户数,系统等待时间和等待策略等.
Ø
脚本参数化
让所有用户都使用相同的数据来运行,对系统造成的压力与实际情况会有所不同.而对于那些禁止一个用户多次登陆的系统,也就严重到无法测试的地步了.为了解决这个问题,让系统更加真实的模拟多用户使用的实际环境,LOADRUNNER提供了对脚本进行参数化输入的功能;
所谓的脚本参数化,就是针对脚本中的某些常量,定义一个或多个包含数据源的参数来取代,让场景中不同的虚拟用户在执行相同的脚本时,分别使用参数数据源中的不同数据代替这些常量,从而达到模拟多用户真实使用系统的目的.
n
确定需要参数化的常量
打开脚本后,首先要确定哪些常量需要参数化;
n
准备数据
既然是使用多组数据来替换常量,就需要在使用参数替换常量之前,针对性的准备一些模拟真实情况的数据.LOADRUNNER允许多种类型的数据源,如DAT的文本文件,电子表格,来自ODBC的数据库数据和其他系统提供的数据源等,每种类型的数据源都要求了不同的格式,这些在LOADRUNER的帮助文件中都有详细的说明;
n
对脚本进行参数化
在脚本中用鼠标选中要参数化的常量,然后单击鼠标右键,在弹出的快捷菜单中选择REPLACE WITH A PARAMETER命令,系统弹出SELECT OR CREATE PARAMETER对话框.通过这个对话框可以选择一个已经存在的参数,还可以根据需要创建一个新的参数.
单击PROPERTIES按钮,可以在PARAMETER PROPERTIES 对话框中设定脚本执行时参数的详细替换方式,不同的数据源类型的属性设定对话框的内容也会有所不同.
n
注:参数化输入只能用于函数中的参数,不能用参数代替非函数中的常量参数;
Ø
插入检查点
LOADRUNNER检查点的功能主要用来验证某个界面上是否存在指定的TEXT或IMAGE等对象,在使用LOADRUNNER测试WEB应用时,可以检查压力较大时WEB服务器能否返回正常的页面。
n
定位要检查的页面
定位需要检查的页面,最好将脚本视图切换到TREE VIEW方式,这样就可以直观地查看到LOADRUNNER录制时获取的每个页面了。在TREE VIEW视图中用鼠标单击页面左侧列表中页面对应的URL,就能迅速查看到准备检查的页面和页面上需要检查的图象或文本信息。
n
插入文字检查点
选择相应的URL,单击鼠标右键,在系统弹出的菜单中选择INSERT AFTER或INSERT BEFORE命令,在URL的脚本前面或后面插入函数,在ADD STEP对话框中可以插入很多的函数,如果想为WEB应用插入图像或文本检查点,需要选择WEB CHECKS下面的IMAGE CHECK或TEXT CHECK,
在系统弹出的检查点属性对话框中,输入要查询的文字或图像名称后,系统会自动在TREE VIEW视图中的树型列表中插入类似的STEP。
LOADRUNNER 还允许对要检查的文字内容和图像名称进行参数化,参数化的过程可以在插入检查点的 过程中实现,还可以在插入之后重新打开脚本实现。要想在插入检查点时就直接实现参数化,只需要在设置被检查对象的名称时单击ABC按钮,创建或选择参数输入就可以了。
n
设定与检查点有关的选项
系统在执行时是否起用检查点,是由一个系统参数控制的,该参数的设定方法为:VUSER|RUN-TIME SETTINGS|PREFERENCES,如果想让检查点起作用,需要选中ENABLE IMAGE AND
TEXT CHECK 复选框。
n
查看检查点是否通过
脚本运行结束后,要想查看检查点是否通过,可以在TREE VIEW视图下,用鼠标右键单击检查点步骤,选择GO TO STEP IN EXECUTION命令,则系统自动将光标定位到执行日志中获取检查点结果的一行上。
Ø
RUN-TIME SETTINGS
选择VUSER|RUN-TIME SETTINGS 命令,可以设定VIRTUAL USER GENERATOR中和脚本相关的一些运行时参数;
n
ITERATION COUNT(重复次数)
入口:GENERAL|RUN LOGIC;
参数说明:设定每个ACTION的重复执行次数;
需要注意的是,DURATION参数是优先于ITERATION的,举例说明,假定将DURATION设为5分钟,即使在RUN-TIME中将INRATIONS参数设为1,虚拟用户也会在5分钟之内进行尽可能多的反复执行脚本,在限定了DURATION的场景中,DURATION时间是从所有用户状态变为INIT开始计算的,这样就存在一个问题,有些初始化过程很长的用户,可能还没有到达RUN状态就因DURATION时间限制而中止了,要解决这个问题,测试人员可选择INITIALIZE ALL VUSERS BEFORE RUN选项,这样DURATION时间会在所有用户都到达RUN状态后开始计时.
n
THINK TIME
THINK TIME参数设定入口:GENERAL|THINK TIME
参数说明:设定脚本回放时对思考时间的处理方式.
IGNORE THINK TIME:
选择该选项,脚本回放时将不在执行LR_THINK_TIME()函数,这样会给服务器造成更大的压力.
REPLAY THINK TIME:
选择该选项,脚本回放时执行LR_THINK_TIME()函数,
1,按录制时获取的THINK TIME值回放脚本;
2,按照录制时获取值的整数倍回放脚本;
3,限定一个最大和最小的比例,按照两者之间的随机值回放脚本;
LIMIT THINK TIME TO:
用于限定THINK TIME 的最大值,脚本回放过程中,如果发现有超过这个值的,用这个最大值替代;
n
ERROR HANDLING
入口:GENERAL|MISCELLANEOUS
参数说明:设定遇到错误时的处理方式
1,CONTINUE ON ERROR,遇到错误继续运行;
2,FAIL OPEN TRANSACTIONS ON LR_ERROR_MESSAGE,
执行到事务中调用的LR_ERROR_MESSAGE()函数时将事务的结果置为FAILED
3,GENERATE SNAJPSHOT ON ERROR对错误进行快照.
n
MULTITHREADING
设定脚本运行方式;
入口:GENERATOR|MISCELLANEOUS
1,RUN VUSER AS A PROCESS,以多进程方式运行;
2,RUN VUSER AS A THREAD,以多线程方式运行;
4.在 LoadRunner 脚本中做关联 (Correlation)Ø
自动关联---- Rules Correlation
可以自动找出需要关联的值,并且自动使用关联函数建立关联。
在录制过程中VuGen会根据订定的规则,实时自动找出要关联的值。
n
点选VuGen的【Tools】>【Recording Options】,开启【Recording Options】对话窗口,选取【Internet Protocol】>【Correlation】,勾选【Enable correlation during recording】,以启用自动关联。 n
假如录制的应用系统属于内建关联规则的系统,如AribaBuyer、BlueMartini、BroadVision、InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,请勾选相对应的应用系统。 n
或者也可以针对录制的应用系统加入新的关联规则,此即为使用者自订的关联规则。 n
设定当VuGen侦测到符合关联规则的数据时,要如何处理: u
【Issue a pop-up message and let me decide online】:跳出一个讯息对话窗口,询问您是否要建立关联。 u
【Perform correlation in sceipt】:直接自动建立关联 2.
录制脚本
开始录制脚本,在录制过程中,当VuGen侦测到符合关联规则的数据时,会依照设定建立关联,您会在脚本中看到类似以下的脚本,此为BroadVision应用系统建立关联的例子,在脚本批注部分可以看到关联前的数据为何。 Ø
自动关联----Correlation Studio
当录制的应用系统不属于VuGen预设支持的应用系统时,Rule Correlation可能既无法发挥作用,这时可以利用Correlation Studio来做关联。 Correlation Studio会尝试找出录制时与执行时,服务器响应内容的差异部分,藉以找出需要关联的数据,并建立关联。 使用Correlation Studio的步骤如下: 2.
执行完毕后,VuGen会跳出下面的【Scan Action for Correlation】窗口,询问您是否要扫描脚本并建立关联,按下【Yes】按钮。 3.
扫描完后,可以在脚本下方的【Correlation Results】中看到扫描的结果。 4.
检查一下扫瞄的结果后,选择要做关联的数据,然后按下【Correlate】按钮,一笔一笔做,或是按下【Correlate All】让VuGen一次就对所有的数据建立关联。
注意:由于Correlation Studio会找出所有有变动的数据,但是并不是所有的数据都需要做关联,所以不建议您直接用【Correlate All】。 5.
一般来说,您必须一直重复步骤1~4直到所有需要做关联的数据都找出来为止。因为有时前面的关联还没做好之前,将无法执行到后面需要做关联的部份。
Ø
手动关联
有可能有些需要做关联的动态数据,连Correlation Studio都无法侦测出来,这时您就需要自行做手动关联了。 5.试运行脚本脚本录制完毕后,按F5键或单击菜单上的RUN按钮,可以运行脚本,在VIRTUAL USER GENERATOR中运行脚本的作用,主要是查看录制的脚本能否正常通过,如果有问题,系统会给出提示信息,并定位到出错的行上,便于用户查找到错误,修改完善测试脚本,运行结束后;系统会给出相应的运行结果.
6.保存脚本LOADRUNNER的测试脚本在资源管理器中是以目录的形式存储的,目录名称就是LOADRUNNER识别的脚本名称.
四、MERCURY LOADRUNNER CONTROLLER创建场景
进行压力负载测试时,测试人员的工作就是了解被测应用的性能需求,从应用程序中找出一个或多个性能测试点,然后针对这些性能点分别进行测试,获取相关的性能指标结果,分析被测应用,追溯性能问题产生的根源.要使用LOADRUNENR实现这一过程,就需要针对这些性能点建立一个个的场景,因此,LOADRUNNER的每个场景都定义了一个在性能测试活动中发生的事件,它能控制虚拟用户的数量,测试脚本和运行脚本的LOAD GENERATOR.对于有经验的测试人员来说,定义场景是在计划阶段进行的,它优先于脚本的录制过程,并指导脚本的录制。只不过计划阶段的场景只能限于纸面上,要想让LOADRUNNER这个测试工具实现自动的负载测试,需要在CONTROLLER中建立实实在在的场景。
对于有经验的测试人员来说,定义场景是在计划阶段进行的.它优先于脚本的录制过程,并指导脚本的录制。只不过计划阶段的场景只限于纸面上,要想让LOADRUNNER这个测试工具实现自动的负载测试,需要在CONTROLLER中建立实实在在的场景。
1.选择场景类型每次在CONTROLLER中创建一个场景的时候,系统会首先让用户选择场景的类型。LOADRUNNER为用户提供了面向目标和手工设置的两种场景策略,具体选择哪一种要根据具体的项目需求来定。 Ø
MANUAL SCENARIO这种方式是完全手动设置,测试人员需要手工设定虚拟用户数,SCHEDULE和LOADGENERATOR等
Ø
MANUAL SCENARI WITH PERCENTAGE MODE 这种方式与MAMUAL SCENARIO方式比较相似,只是在分配用户数的方式有所不同
1,后者需要设定TOTAL NUMBER OF VUSERS,即所有虚拟用户数;
2,后者需要为每个脚本分配用户数比例,由系统按照比例自动分配用户数;
3,后者脚本选择LOADGENERATOR时,除了可以选择单个的LOAD GENERATOR外,还可以设置为ALL LOAD GENERATOR,即使用所有的LOADGENERATOR。
由于这种方式没有用户组的概念,因此在设置SCHEDULE时,不能按组设置,只能按整个场景设置,
Ø
GOAL-ORIENTED SCENARIO
这种方式是基于目标自动创建场景的方式,测试人员只要输入性能测试所要达到的目标,LOADRUNNER就会自动根据目标安排场景的运行;
采用GOAL-ORIENTED SCENARIO方式创建场景时,需要单击EDIT SCENARIO GOAL按钮定义场景目标,CONTROLLER在执行的时候会根据场景目标的要求,自动加载用户,控制场景的运行;
n
VIRTUAL USERS
以虚拟用户数作为目标,当一个应用对用户数要求比较高时,可以使用这种方式来测试一个应用程序能够允许多少个用户同时运行。基于用户数目标的原理和设定方法比较简单,他和MANUAL SCENARIO WITH PERCENTAGE MODE 方式基本相似,只需要定义要求达到的用户数就可以了。从某种意义上讲,它还不能体现面向目标类型的优势。
n
HITS PER SECOND,以每秒点击数作为目标,
n
TRANSACTIONS PER SECOND,以每秒事务数作为目标,
n
PAGES PER MINUTE,以每分钟页数作为目标,
以上三种类型都需要用户指定虚拟用户数的范围,CONTROLLER在运行场景的时候,首先加载最小的用户数,如果使用最小的用户数不能达到目标,系统会自动逐渐增加用户直到能够达到设定的目标为止。当加载的用户数达到最大值仍然不能满足要求时,就需要重新设置场景,增加最大用户数。可以通过LOAD BEHAVIOR选项设定三种不同的用户加载策略,如果没有达到目标,LOADRUNNER会重新运行场景,一次加载最大的用户数,尝试是否能够达到目标,如果出现如下情况之一,场景的运行结果都会置于FAILED状态,
CONTROLLER两次加载了最大的用户数都没有达到目标;
在运行过程中所有的用户都失败了;
LOAD GENERATOR数目不能满足要求;
CONTROLLER在增加用户的过程中,性能指标没有增加;
CONTROLLER在加载第一批用户后,没有捕获到指标的值;
n
TRANSATIONS RESPONSE TIME,以事务响应作为目标,
主要用于衡量要达到预期的事务响应时间,系统所容纳的最多用户数,如果系统已经加载了最大的用户数,响应时间仍然低于设定的值,说明系统还有能力容纳更多的用户,如果使用一部分用户就达到了设定的响应时间,说明系统是无法容纳设定的最大数量的用户的,必须通过完善应用程序来达到目的;
2.多机联合产生负载
LOADRUNNER对应用程序施压时,采用的方法就是让一台机器模拟很多用户,同时向被测用户发送请求或进行操作。这样,如果一台测试机器模拟的虚拟用户数过多,他本身性能的下降会直接影响测试效果。为了避免这种情况,LOADRUNNER允许使用多台机器运行场景来均衡测试机器的负荷。只要一台机器安装了LOAD GENERATOR并启动了LOADRUNNER AGENT PROCESS进程,就可以被CONTROLLER统一调度来运行场景,CONTROLLER负载收集统一的测试信息和执行结果。
Ø
安装LOAD GENERATOR,如果一台测试机仅用来被CONTROLLER调用执行场景,只需安装LOAD GENERATOR就可以了。方法是在LOADRUNNER安装首页选择LOAD GENERATOR选项。需要注意的是,LOAD GENERATOR的服务启动后,屏幕右下角的任务栏上会显示一个代理(AGENT)的图标;
Ø
在CONTROLLER中创建LOAD GENERATOR
CONTROLLER进行多机联合产生负载之前,首先要加载准备使用的LOAD GENERATOR,单击场景设定对话框中的GENERATORS按钮,系统会弹出LOAD GENERATORS对话框;在LOAD GENERATOR
对话框中可以查看到所有已经加载的LOAD GENERATOR信息。
n
NAME:LOAD GENERATOR所在的机器名称。如果是LOCALHOST,表明这个GENERATOR是在本机上;
n
STATUS:标识了GENERATOR目前的状态,
n
PLATFORM:显示了系统的平台名称;
n
单击ADD可以添加新的LOAD GENERATOR;添加LOAD GENERATOR后,一般要测试CONTROLLER能否正确连接到这个GENERATOR,单击CONNECT按钮,LOADRUNNER的CONTROLLER就会尝试去连接选中的LOAD GENERATOR,如果连接成功就在STATUS字段中显示READY,如果失败就会显示FAILED。
Ø
在场景中用不同的LOAD GENERATOR联合产生负载
创建好LOADGENERATOR以后,在CONTROLLER的LOAD GROUPS列表中就可以选择使用了,
使用多个LOAD GENERATOR运行场景的时候,可以让不同的虚拟用户组在不同的机器上运行,分解了CONTROLER本身的压力,更能体现系统真实的运行环境;
3.设定集合点策略
LOADRUNNER在运行场景的时候,允许测试人员根据项目需要自己设定集合点的并发策略,要设定一个集合点以何种方法运行,在创建或打开脚本中包含集合点的场景时,选择SCENARIOI|RENDEZVOUS命令,可以查看场景中所有脚本中的集合点名称,所属脚本,当前状态和相关的虚拟用户列表信息等,根据系统需求,还可以针对集合点的执行进行设定。
Ø
单击DISABLE/ENABLE RENDEZVOUS按钮可以选定集合点是否启用;
Ø
单击DISABLE/ENABLE VUSERS按钮可以设定一个用户是否参与到集合点中;
Ø
单击POLICY按钮可以设定集合点执行策略。
n
在POLICY对话框中的TIMEOUT BETWEEN VUSERS文本框中设定了一个超时时间,当第一个用户到达集合点时,系统开始计时。如果在这个设定的时间内没有达到要求的集合点用户数,系统就不在等待,释放用户让场景继续执行;
4.启用IP欺骗
LOADRUNNER进行压力负载测试的时候,是让一台机器模拟成百上千的用户对服务器施压,这样就产生了一个问题,那就是所有用户向服务器发起请求的时候,使用的都是同一个IP地址,即LOAD GENERATOR所在机器的固定IP地址,这是和实际运行环境不符的,而且有些应用系统在设计的时候会根据IP来分配资源,有些还限制同一个IP的多次登陆过程。LOADRUNNER为了解决这个问题,使用了一种称为“IP欺骗(IP SPOOFER)”的技术。也就是让一个LOAD GENERATOR上的虚拟用户模拟从不同的IP来向服务器发起请求,以达到以假乱真的目的。
Ø
配置IP SPOOFER
LOADRNNER配置动态IP的工具是程序组中的一个小工具-IP WIZARD,它能够指导用户按步骤完成配置过程,这里有三个单选按钮;
第一个单选按钮CREATE NEW SETTING,用于创建一个新的设置,首次运行时选用;
第二个单选按钮LOAD PREVIOUS SETTING FROM可以调用以前保存的设置;
第三个单选按钮RESTORE ORIGINALSET不是用来创建动态IP,而是将设置恢复为原始状态,这个选项主要用于使用后释放IP,如果使用完毕后不释放IP的话,那么这些IP会被一直占用,别人就无法使用了。
Ø
输入WEB SERVER的IP地址,这里主要用来检测新的IP地址加到主机中后,SERVER的路由表是否需要更新,如果SERVER和CLIENT使用的是相同的子网掩码,IP CLASS类型和网络,是无需更新的;
Ø
在添加新的动态IP的时候,需要注意如下几个选项的含义:
n
PRIVATE ADDRESS SPACES:选择测试环境的IP地址类型,关于IP地址类型的定义
n
FROM IP:要使用IP段的第一个值;
n
NUMBER TO:要使用的IP地址的数目。
n
SUBMASK:子网掩码,一般采用默认设置就可以了;
如果选中VERIFY THAT NEW IP ADDRESS ARE NOT ALREADY IN USE复选框,系统会在所选范围内检测每个IP地址,为了避免冲突,LOADRUNNER只添加那些没有被其他用户使用的IP地址。
如果已经预先知道选择范围内的某些地址可能被占用,那么在NUMBER TO文本框中输入的IP地址的个数就要有相应的增加。
Ø
起用IP欺骗
在CONTROLLER窗口中,选择SCENARIO|ENABLE IP SPOOFER命令,就可以起用IP欺骗了,在IP欺骗启用后,在CONTROLLER状态栏中会显示相应的状态标识;
Ø
在OPTIONS中设置IP地址的分配方式;
创建虚拟IP地址之后,还要选择TOOLS|OPTIONS命令,在弹出的对话框中单击GENERAL标签以设定IP地址的分配方式;
n
IP ADDRESS ALLOCATION PER PROCESS:给每个进程分配不同的IP地址;
n
IP ADDRESS ALLOCATION PER THREAD: 给每个线程分配不同的IP地址;
一般来说,如果在RUN-TIME SETTING中设置的是以多线程的方式运行,则这里就给每个线程分配不同的IP地址。如果在RUN-TIME SETTING中设置的是以多进程的方式运行,则这里给每个进程分配不同的IP地址;
注意:只有在CONTROLLER中选择TOOL|EXPERT MODE 命令,才能在OPTIONS对话框中包含设定IP分配的选项;
5.使用测试管理工具进行统一管理
LOADRUNNER和MERCURY QUALIY CENTER的完美结合,给用户组织和管理LOADRUNNER的测试脚本,场景和测试数据带来了极大的便利。QUALITY CENTER是MERCURY 提出的针对质量保证的解决方案。只要将LOADRUNNER连接到基于WEB的QUALITY CENTER,则场景的存储执行和测试结果的收集就会随时随地被MERCURY QUALITY CENTER的测试项目进行有效的管理;
Ø
连接到QUALITY CENTER
要想让LOADRUNNER使用一个QUALITY CENTER 对测试内容进行管理,首先必须通过URL连接到QUALITY CENTER,这个QUALITY CENTER 既可以是安装在本地的局域网上,也可以是通过广域网访问的测试管理平台;
在CONTROLLER模块中,选择TOOLS|QUALITY CENTER CONNECTION 命令,弹出QUALITY CENTER
CONNECTION 对话框,在SERVER文本框中输入安装了QUALITY CENTER的WEB服务器的URL地址,单击CONNECT按钮,系统会试图建立对QUALITY CENTER服务器的连接,如果连接建立成功,则会在PROJECT CONNECTION 一栏显示QUALITY CENTER的项目;
在PROJECT CONNECTION 一栏输入相关的内容,即选定要连接的测试管理项目,单击CONNECT按钮,系统开始对相应的项目建立连接。一旦建立成功,则QUALITY CENTER的项目信息就变为只读状态;
Ø
断开服务器或项目
在连接状态中,可以随时单击DISCONNECT 按钮断开QUALITY CENTER服务器或项目的连接;
Ø
打开/保存测试项目场景
如果LOADRUNNER正在连接到一个测试管理工具上,那么在保存和打开场景的时候,系统弹出的对话框会有所不同,如果仍然希望在文件系统中打开/保存场景,可以单击对话框中的FILE SYSTEM按钮进行切换;关于测试管理工具如何管理和调用LOADRUNNER的场景,请参考TD。
6.控制场景的运行在CONTROLLER中单击START SCENARIO按钮开始执行场景以后,LOADRUNNER首先检查场景的配置信息,并激活被测应用,然后将虚拟用户分配到相应的LOAD GENERATOR上。当虚拟用户准备好以后就开始对被测应用施压,在施压的同时LOADRUNNER会完成如下的操作;
1)
记录在脚本中定义的每个事务的执行时间;
2)
执行脚本中定义的集合点的功能;
3)
收集每个虚拟用户发出的告警,错误和提示信息;
在场景执行过程中,学员可以查看虚拟用户发出的各种信息,可以随时停止一个用户或多个用户组的执行,可以让LOADRUNNER命令某些用户和用户组在场景执行结束前进行重复操作等。
Ø
初始化用户组
单击START SCENARIO 按钮执行场景时,虚拟用户并没有立刻执行脚本,而是首先执行一个初始化过程,初始化完毕的用户状态会变为READY,只有状态为READY 的用户才能真正开始执行脚本。由于各种条件的限制,场景中用户的初始化过程是无法达到完全同步的,这就造就了用户无法同时运行测试脚本。为了让用户能够同时对被测应用施压,LOADRUNNER提供了初始化用户组的策略,让所有用户在执行脚本之前全部变为READY 状态。
初始化用户组的方法是在开始运行场景之前,先在RUN选项卡中选中要初始化的用户组,然后单击工具栏的INITIALIZE THE SELECTED VUSERS按钮,或者单击鼠标右键,在弹出的菜单中选择INITIALIZE GROUPS命令,如果初始化成功,用户状态变为READY,如果失败,用户的状态就会变为ERROR。
Ø
停止场景的运行
一个场景会在以下三种情况停止运行:
1)
所有用户都执行完脚本;
2)
测试人员手动停止了场景的运行;
3)
执行超时;
LOADRUNNER可以根据用户的设定,采用不同的停止方式;
1)
要手动停止整个场景的运行,只需在场景运行过程中单击RUN标签中的STOP按钮即可。
2)
如果希望选定的用户组停止执行,可以单击工具栏的STOP VUSERS按钮;
3)
如果OPIONS的RUN-TIME SETTING中设定了WAIT FOR CURRENT INTERATION TO END BEFORE STOPPING 或者WAIT FOR CURRENT ACTION TO END BEFORE STOPPING ,那么可以单击GRADUAL STOP按钮逐渐停止场景的运行;
Ø
对正在运行的场景增加用户数
在场景运行的时候,还可以在RUN/STOP VUSER对话框中增加用户,对话框的内容会根据所选择的模式的不同而有所不同。如果使用的是VUSER GROUP MODE,则在RUN/STOP VUSERS对话框的“#” 一栏中为每个用户组输入新的用户总数后,单击“RUN”按纽,系统会自动初始化新增加的用户数并开始运行;如果使用的是PERCENTAGE MODE,那么只要输入用户总数,系统会根据比例自动分配新的用户到不同的组中。
五、
MERCURY LOADRUNNER CONTROLLER监视场景
影响事务响应时间的一个主要因素就是系统资源和应用服务器的使用情况。通过监视场景执行时的系统和服务器资源,基本能够确定系统的瓶颈在哪里。下面简单介绍通过添加性能计时器来监视各个服务器的运行情况,确定系统的瓶颈;
1.
在线监视场景
LOADRUNNER允许测试人员在场景的执行过程中在线查看产生的性能数据,除了监视本机的性能指标外,CONTROLLER还允许用户在线监视服务器的性能;
使用CONTROLLER监视场景之前,需要定义和配置LOADRUNNER的监视组件,根据监视指标的不同,相应的配置过程和参数也完全不同,要想完成监视组件的配置过程,测试人员除了掌握LOADRUNNER的使用以外,更重要的是要对被监视的服务器中的应用相当熟悉。
一般来说,在监视一个服务器之前,要经过如下两个步骤:
1)
在服务器端配置被监视服务器的监视环境;(有些指标不需对服务器进行特殊配置)
关于如何配置服务器端监视环境,由于不同类型的指标配置方法也不尽相同,需要测试人员熟悉被测应用的系统架构,并查阅相关的LOADRUNNER文档;
2)
在LOADRUNNER的CONTROLLER中配置要监视的MONITOR;
在LOADRUNNER CONTROLLER中,对监视指标进行了分类,具体的分类方式及每个类别包括的性能指标在RUN 视图的AVALIABLE GRAPHS列表中都有详细的说明。
Ø
添加计数器
很多服务器(DATABASE SERVER,WEB SERVER等)和系统资源的性能指标数据,是通过手动在CONTROLLER中添加计数器来实现的;下面来介绍如何在CONTROLLER中添加性能计数器。注意的是,使用不同的操作系统,计数器会不完全相同;
在AVAILABLE列表中,单击要监视的图表,选择MONITOR|ADD MEASUREMENTS;或者在AVAILABLE GRAPH中先将准备监视的指标拖至右侧图表栏中,然后用鼠标右键单击该图表,在弹出的快捷菜单选择ADD MEASUREMENTS,系统会自动弹出相应的监视服务器对话框;单击上部的ADD按钮,在MONITORED SERVER MACHINES中添加要监视的服务器名称(或IP地址)和相应的系统平台;单击下部的ADD按钮在RESOURCE MEASUREMENTS ON列表中添加相应的计数器,这里可以选择一个或多个性能指标。如果添加成功的话,场景运行的时候,就可以在线监视所选择的指标数据了
注意:必须以被监视机器的管理员身份登陆到CONTROLLER所在机器,才能添加被监视机器的性能计数器;
Ø
常见的计数器
1)
MEMORY相关,内存问题主要检查应用程序是否存在内存泄露,如果发生了泄露,PROCESS\PRIVATE BYTES计数器和PROCESS\WORKING SET计数器的值往往会升高,同时AVALIABLE BYTES的值会降低.内存泄露应该通过一个长时间的测试来检查,主要测试当所有内存都耗尽时应用程序的反应情况;
2)
PROCESSOR相关,判断应用程序是否存在处理器的瓶颈
n
如果PROCESSOR QUEUE LENGTH显示的队列长度保持不变(>=2),且处理器的利用率%PROCESSOR TIME超过90%,那么很可能存在处理器瓶颈;
n
如果发现PROCESSOR QUEUE LENGTH显示的队列长度超过2,而处理器利用率却一直很低,那么或许更应该去解决处理器的阻塞问题,处理器一般不是瓶颈;
n
如果系统由于应用程序代码效率低下或者系统结构设计有缺陷而导致大量的上下文切换(CONTEXT SWITCHES/SEC,显示的上下文切换次数)比较大,那么就会造成大量的系统资源;
n
如果系统吞吐量降低并且CPU的使用率很高,并且此现象发生时切换水平在1500以上,那么意味着上下文切换的次数过高;
n
还可以比较CONTEXT SWITCHES/SEC和%PRIVILEGED TIME来判断上下文切换是否过量;如果后者的值超过40%,且上下文切换的速率也很高,那么应该检查为什么会产生这么高的上下文切换;
3)
网络吞吐量及带宽
BYTES TOTAL/SEC: 判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较,相除结果应该小于50%;
4)
磁盘相关
判断磁盘瓶颈的方法是通过以下的公式来计算:
每磁盘的I/O数=[读次数+(4*写次数)]/磁盘个数
如果计算的每磁盘的I/O数大于磁盘的处理能力,那么磁盘存在瓶颈;
5)
WEB SERVER相关
6)
数据库服务器相关
2.定制图表显示方式Ø
定制在线监视图表个数;
场景运行时,LOADRUNNER让用户默认在线监视4个图表,测试人员可以根据需要自己定制图表的个数:
鼠标右键单击一个图像,在弹出的快捷菜单中选择VIEW GRAPHS(或选择VIEW|VIEW GRAPHS命令),然后选择或设定显示图象的个数就可以了;
Ø
设定监视器选项;
选择TOOLS|OPTION命令,在MONITORS选项卡中可以统一设定监视器的一些参数选项,
1)
TRANSACTION
DATA
用于监视事务图表的数据行为,这些参数不能在场景运行过程中更改,参数修改后需要重新连接虚拟用户的LOADGENERATOR才能生效;
n
ENABLE TRASACTION MONITOR:如果选择该选项,场景启动后就自动开始监视事务,默认情况下,该选项是选中的;
n
FREQUENCY:设定MONITOR抽样数据产生事务,获取数据点和生成网络资源在线图表的频率.默认为5秒,如果是小的场景建议使用1秒;如果大一些的场景,建议3-5秒;这个参数越低,采样间隔越小,监视图表越精确,网络工作量也就越大;
2)
SERVER RESOURCE MONITORS
定义了服务器资源监视器的行为,修改该选项对已经被激活的图表不起作用,只对随后被激活的图表起作用;
DATA SAMPLING RATE:定义了服务器两次采样数据的时间间隔,默认为3秒,这个参数对所有图表都起作用,如果要对单个图表起作用,需要在单个图表的配置属性中定义,
每个图表都有一个最小的采样频率,如果这里设定的值低于图表的最小采样频率,图表仍然使用最小的采样频率;
3)
ERROR HANDLING
定义了监视过程中的错误处理方式;
n
SEND ERROR TO THE OUTPUT WINDOW:遇到错误时将出错信息输出到OUTPUT窗口;
n
POP-UP AN ERROR MASSAGE BOX:遇到错误时弹出错误信息窗口;
4)
DEBUG
设定DEBUG场景的方式;
DISPLAY DEBUG MESSAGE:选中该复选框,系统会向输出日志中发送DEBUG相关信息,定义DEBUG的等级;
Ø
配置图表和计数器属性;
n
设定图表属性
如果想对一个图表单独配置显示属性,只需选择该图表,选择MONITOR|ONLINE GRAPHS|CONFIGURE命令,或者在右键单击图表后选择CONFIGURE命令,系统都会打开GRAPH CONFIGURE对话框。在该对话框中可以设定图表的数据刷新频率,X轴(时间轴)和Y轴的显示方式,显示比例等;
n
设定计数器属性
要设定图表中单个计数器的属性,可以用鼠标右键单击图表列表中的相应计数器,在弹出的菜单中选择CONFIGURE命令,可以设定计数器在图表中的显示颜色,显示比例和是否隐藏等;
Ø
合并图表;
LOADRUNNER为了便于测试人员比较两个图表数据之间的关系,提供了图表合并的功能,也就是可以将同一个场景中的两个图表中的计数器合并到一个图表中,合并以后的图表共用一个X轴。
要合并两个图象,只需右键单击一个图表,在弹出的快捷菜单中选择OVERLAY GRAPHS命令,然后在系统提示的对话框中选择另一个图表,并为新图表命名,需要注意的是只有X轴相同的图表才能合并;
3.其他与监视图表相关的功能Ø
穿越防火墙监视图表;
为了安全起见,运行MONITOR和VUSER的机器安装了防火墙,这样处于防火墙之外的CONTROLLER在控制虚拟用户执行和监视场景的时候就会碰到一些麻烦;
LOADRUNER通过在防火墙上使用基于HTTPS或者使用标准SSL端口(443)的安全的TCP/IP的协议来解决这个问题。使用LOAD GENERATOR机器或MONITOR机器上的代理充当通信过程的媒介,与MI LISTENER通信。 MI
LISTENER是一个需要单独安装的LOADRUNNER组件,它服务于CONTROLLER和LOADRUNNER代理之间,
如果未安装MI LISTENER组件,LOADRUNNER也可以穿越防火墙实现监控MONITOR和执行VUSERS,这时需要在
LOAD GENERATOR 端和CONTROLLER端的防火墙上均打开54345端口;
Ø
远程监视场景;
LOADRUNNER提供了一个组件,用于同时通过多个机器上的WEB页面远程监视场景,每个监视还可以根据需要定制不同监视图表;
要完成远程监控,需要一个远程性能监视服务器,(REMOTE PERFORMANCE MONITOR SERVER),它是一个包括很多ASP页面和性能图表过滤器的网站,和CONTROLLER交互数据,并且决定能够在线查看场景的用户数。远程性能监视服务器上必须安装LOADRUNNER的REMOTE PERFORMANCE MONITOR SERVER组件,该组件有如下系统需求:
n
WEB SERVER: IIS5.0
n
操作系统:WINDOWS 2000SERVER或WINDOWS 2000ADVANCED SERVER
n
客户端浏览器:IE5.0或NETSCAPE6.2以上;
六、
使用ANALYSIS分析测试结果 要查找系统瓶颈,就必需分析LOADRUNNER获取的性能指标数据,在LOADRUNNER场景运行的同时获取了大量的数据,可以根据以下几种方式分析这些数据:
1)
查看VUSER LOG文件,这些文件包括了场景运行过程中每个用户的跟踪数据,VUSER LOG文件一般放在脚本目录中;
2)
在CONTROLLER的OUTPUT窗口查看场景的执行过程信息;
3)
使用ANALYSIS模块分析执行结果图表;
4)
使用SPREADSHEET直接查看生成图表的原始数据---GRAPH
DATA或者RAW DATA;
5)
让LOADRUNNER自动生成HTML或WORD格式的测试报告,通过报告分析;
LOADRUNNER的ANALYSIS模块是分析系统的性能指标的一个主要工具,它能够直接打开场景的执行结果文件,将场景数据信息生成相关的图表进行显示.ANALYSIS集成了强大的数据统计分析功能,允许测试员对图表进行比较和合并等多种操作,分析后的图表能够自动生成需要的测试报告文档;ANALYSIS作为LOADRUNNER的一个主要模块,是帮助测试人员分析系统性能瓶颈的得力助手;
1、
使用ANALYSIS分析测试结果场景运行完毕,在结果目录下会自动保存一个扩展名为LRR的结果文件,ANALYSIS能够打开这个结果文件,加载时自动处理LRR文件内的结果信息,并自动生成相应的结果图表;
每次对结果信息进行处理的时候,ANALYSIS是在一个开启的会话内进行工作的。每个会话至少包括一套场景结果(即一个LRR文件)。在ANALYSIS中对结果信息进行另存的时候,除了重新保存数据自身信息外,还保存了结果数据在ANALYSIS中实现的显示方式和层次关系,以及哪些图表被激活等信息,这时保存的文件扩展名为LRA,
Ø
打开分析图表;
除了系统提示的默认的图表外,测试人员还可以查看其他包含数据的图表,方法是:在左侧的图表列表中双击NEW GRAPH,弹出OPEN A NEW GRAPH对话框,对话框中所有名称为篮色的图表均为包含数据的图表;
选中后单击OPEN A NEW GRAPH按钮即可以添加到主窗口中;
Ø
使用ANALYSIS分析结果图表;
加载场景运行结果文件(.LRR)后,ANALYSIS就可以根据需要对相关的性能指标进行分析了.首次加载结果文件后可以看到,在ANALYSIS中包含了很多图表,也同时说明了LOADRUNNER在场景运行过程中获取了很多和性能相关的数据;针对每一个被测应用来说,到底哪个性能指标是影响性能的关键了.了解常用的性能指标,熟悉使用ANALYSIS分析工具分析测试结果是确定系统瓶颈的关键.再次强调,不同的应用程序,影响其性能的因素也不同,要分析被测软件的性能因素,首先要熟悉被测软件的技术架构;
LOADRUNNER除了将获取的原始数据形成直观的图表外,还对数据进行了一些统计,,例如在多数分析图表下方的图例列表中,给出了最大值,最小值,平均值,中间值和STD等一些统计字段,便于用户分析;
STD是一个统计学概念,称为标准偏差值,是用来衡量数据的偏离程度的.当平均值不多时,可以从STD指标看出统计图表列数据到底是分散还是集中的.STD越小表示图表的列数据越集中,拿AVERAGE RESPONSE TIME来说,也就表示每个虚拟用户单一的响应时间值大致是差不多的,即被测系统的反应很稳定,没有大起大落;
1)
TRANSACTION
PERFORMANCE SUMMARY
可以基本确认哪个事务的响应时间比较长,一般来说,响应时间长的事务是分析的重点;
2)
AVERAGE
TRANSACTION RESPONSE TIME
可以详细查看每个事务在场景运行中的响应时间,
3)
WEB PAGE BREAKDOWN
用于分解页面,查看页面中哪些组件导致事务的响应时间比较长,
n
DNS RESOLUTION时间
DNS服务器解析IP地址的时间,这个度量时间可以确定DNS服务器或者DNS服务器的配置是否有问题,如果DNS运行正常,这个值一般比较小;
n
CONNECTION时间
浏览器和WEB SERVER建立初始化连接的时间,这个度量可以判断网络情况,也可以判断WEBSERVER是否响应这个请求;
n
SSL HANDSHAKING 时间
建立SSL连接的时间,使用SSL协议页面比较少,一般应用在HTTPS通信;
n
FTP AUTHENTICATION时间
FTP服务器在处理客户端的命令之前,首先要对客户端进行鉴权,这个度量就是FTP服务器对客户端进行鉴权的时间;
n
FIRST BUFFER时间
指连接建立成功后,从WEB SERVER发出的第一个数据包经过网络传输到客户端,浏览器成功接受到第一个字节的时间.这个度量既包括WEB SERVER的延迟时间,也包括了网络的反应时间.
n
RECEIVE时间
从浏览器收到第一个字节起,直到成功收到最后一个字节,所经历的时间.这个度量和组件大小结合,可以判断网络的质量;
n
CLIENT时间
指请求在客户端的延迟时间,这个延迟可能是浏览器的THINK TIME等引起的
n
ERROR时间
指从发送HTTP请求到HTTP错误信息返回的时间;
4)
TIME TO FIRST BUFFER BREAKDOWN
可以将页面或组件的时间分解为服务器时间和网络时间,帮助测试人员判断问题缘由到底是服务器还是网络存在瓶颈;
5)
THROUTPUT
可分析整个压力测试过程中WEB SERVER的吞吐量,即虚拟用户在测试过程中各时刻从服务器上接收到的数据量.
6)
DOWNLOAD COMPONENT SIZE
页面元素的大小分解和比较
7)
WINDOWS
RESOURCE
系统资源图表,可以监视服务器端的系统资源使用情况,从而判断服务器的CPU,内存等是否是导致性能降低的原因;
Ø
关于分析图表的几个选项
n
自动整理合并结果
在使用ANALYSIS分析场景结果之前,首先要明确结果文件中收集了哪些信息,默认情况下,各个虚拟用户的执行结果数据都是存放在各个虚拟用户所在的机器上的,场景执行结束后,才被系统自动整理合并后放置到结果目录下,LOADRUNNER是否执行这个整理合并操作是受CONTROLLER中的AUTO COLLATE RESULTS选项控制的。该选项设定方法是在RESULTS下选择AUTO COLLATE RESULTS复选框;
n
设定收集结果信息方式
对于结果文件大于100MB的大型场景,ANALYSIS加载结果数据时会耗费很长时间,测试人员在等待全部数据加载的同时可以首先查看结果的概要数据,这样,在测试人员浏览概要信息的时候系统会陆续加载其他详细信息数据;
测试人员可以根据需要设定是否产生概要数据,以及以何种方式显示结果信息,设定入口:菜单 TOOLS|OPTION|RESULT COLLECTION ,
在DATA SOURCE一栏有三个选项供测试人员选择;
只生成概要数据;只生成全部详细数据;在生成全部详细数据的同时显示概要数据;
n
设定数据聚集粒度
n
使用系统自动聚合的公式自动聚合数据 ;
n
使用系统自动聚合公式只对WEB数据进行聚合;
n
单击AGGREGATION CONFIGURATION自己定义聚合方式 ;
2、使用ANALYSIS技巧Ø
查看图表技巧
1)
将鼠标放置到图表上需要放大部分的起始位置,然后按住鼠标左键拖动,松开鼠标后鼠标圈住的矩形部分的图表放大显示,便于用户查看图表细节;
2)
在图例列表中选择一个MEASUREMENT,单击鼠标右键,在系统弹出的菜单中选择CONFIGURE MEASUREMENT命令,之后就可以设定显示颜色和比例,通过设定比例,可以让不同数量级的数据都在图表的主要区域显示,使每个图表的趋势都很明显;
3)
在图例列表中单击鼠标右键,选择CONFIGURE COLUMN,可以设定在图例列表包含哪些列,以及表格中的图例如何排序等;
4)
在图表中单击鼠标右键,选择SET FILTER/GROUP BY,可以筛选图表中要显示数据和数据的分组方式;
Ø
分析图表技巧
1)
向下钻取图表
选中一个图表中的某条折线,单击鼠标右键后选择DRILL DOWN,可以对选定的MEASUERMENT J进行向下钻取,钻取的方向可以根据需要进行选择,要取消钻取,需要使用SET FILTER/GROUP BY功能;
2)
查看原始数据
在图表下面的RAW DATA或GRAPH DATA中,可以查看图表的原始数据;
3)
自动关联图表
在一个图表上单击鼠标右键,在弹出的菜单中选择AUTO COLLATE命令,依据提示进行设定后,系统会自动搜寻和该图表趋势有一定规律的图表,合并到该图表上,该功能便于测试人员分析指标间的联系,
4)
合并图表
为了便于分析指标间的相互关系,在ANALYSIS中还可以手动将两个图表合并为一个图表.两个图表合并的条件是具有相同的X轴,合并图表的方法是:在ANALYSIS中用鼠标右键单击想要合并图表重中的一个,在弹出的菜单中选择MERGE GRAPH,根据系统提示选择被合并的图表和合并方式,系统会自动生成新的合并后图表.下面是ANALYSIS图表的3种合并方式
n
OVERLAY
两个图表合并和共用一个X轴,左边的Y轴上标识当前图表的刻度值,右边的Y轴标识被合并图表的刻度值。当有多个图表被合并时,仍显示一个Y轴刻度,这时可以通过设定图表的显示比例让所有图表都显示在主区域;
n
TILE
两个图表合并后共用一个X轴,Y轴会被分为两个部分,这样合并的两个图表,看起来相对独立一些,其中一个显示在另一个的上部;
n
CORRELATE
在合并图表后的图表中,其中一个图表的Y轴作为合并后的Y轴,而另一个图表的Y轴作为合并后图表的X轴,这样合并的图表更能看出两个图表变化趋势之间的关系;
Ø
使用QUALITY CENTER管理分析结果
要分析QUALITY CENTER 中的测试结果,首先要做的就是建立到QUALITY CENTER WEB服务器和相关项目的连接;
1)
连接到QUALITY CENTER
在ANALYSIS模块主菜单中选择TOOLS|QUALITY CENTER CONNECTION,弹出QUALITY CENTER CONNECTION对话框,在这里建立连接和取消连接的方法;
2)
使用QUALITY CENTER管理分析结果
在连接的建立状态,测试人员可以选择是打开文件系统文件,还是打开保存在QUALITY
CENTER的项目中的场景执行结果文件,还可以在QUALITY CENTER中创建会话,保存结果分析文件等。
Ø
引入外部数据
监视场景的时候,可以通过添加计数器的方式监视服务器的系统资源,使用ANALYSIS打开场景的结果文件后,就可以对这些系统资源的数据图表进行分析.
但有时受客观条件的限制,测试人员无法在LR场景中监视服务器系统资源,这时可以采用一个办法,就是让服务器自己监视自己的资源,并生成相应的CSV文件,当使用ANALYSIS分析结果的时候,把这些单独的CSV文件作为外部数据导入到ANALYSIS中;
LOADRUNNER提供了ANALYSIS IMPORT DATA工具允许测试人员把一些非自身生成的数据信息引入和集成到ANALYSIS的SESSION中,引入之后,就可以使用ANALYSIS的工具对它们进行查看和分析了。
工具入口:菜单TOOLS|EXTERNAL MONITORS|IMPORT DATA
单击ADD FILE 按钮,输入保存的外部数据源文件后,需要在FILE FORMAT中正确选择数据源的格式,否则可能导致引入过程失败; |
|