建立负载测试场景
场景目标:模拟10个用户同时登录、搜索航班、购买机票、查看航班路线并退出
打开Controller并建立一个新场景
一、打开HP LoadRunner
二、打开Controller
在LoadRunner Launcher窗格中单击运行负载测试
默认状况下,Controller打开时会显示”新建场景“对话框
三、选择场景类型
有两种场景类型:
经过手动场景能够控制正在运行的Vuser数目及其运行时间,另外还能够测试出应用程序能够同时运行的Vuser数目,
你可使用百分比模式,根据业务分析员指定的百分比在脚本间分配全部的Vuser;首次启动LoadRunner时,默认
选中百分比模式复选框,若是已选中该复选框,请取消选中
面向目标的场景用来肯定系统是否能够达到特定的目标
Controller窗口的设计选项卡分为三个主要部分:
”场景组“窗格
”服务水平协议“窗格
”场景计划“窗格
”场景组“窗格:在”场景组“窗格中配置Vuser组,你能够建立表明系统中
典型用户的不一样组,指定运行的Vuser数目以及运行时使用的计算机
”服务水平协议“窗格:设计负载测试场景时,能够为性能指标定义目标或服务水平协议(SLA);运行场景时,
LoadRunner收集并存储与性能相关的数据,分析运行状况时,Analysis将这些数据与SLA进行比较,并为预先
定义的测量指标肯定SLA状态
”场景计划“窗格:在”场景计划“窗格中,设置加压方式以准确模拟真实用户行为,能够根据运行Vuser的计算机、
将负载施加到应用程序的频率、负载测试持续时间以及负载中止方式来定义操做
修改脚本的详细信息:
一、确保basic_script出如今”场景组“窗格的”组名称“列中
二、更改组名称
选择脚本并单击详细信息按钮,在组名称框中输入一个更有意义的名称
单击肯定,此名称将显示在设计选项卡的场景组窗格中
经过Load Generator配置生成负载的计算机
一、添加Load Generator
在设计选项卡中,单击Load Generator按钮
localhost Load Generator的状态为关闭,说明Controller未链接到Load Generator
注:在典型的生产系统中,你将有若干个Load Generator,每个拥有多个Vuser
二、测试Load Generator链接
运行场景时,Controller自动链接到Load Generator,你也能够在运行场景以前测试链接
选择localhost并单击链接;
Controller会尝试链接到Load Generator计算机,创建链接后,状态会从关闭变为就绪,单击关闭
配置场景计划
”场景计划“窗格分为三部分:计划定义区域、操做单元格和交互计划图
一、选择计划类型和运行模式
在计划定义区域,确保选中计划方式:场景和运行模式:实际计划windows
二、设置计划操做定义
你能够在操做单元格或交互计划图中为场景计划设置启动Vuser、持续时间以及中止Vuser操做,
在图中设置定义后,操做单元格中的属性会自动调整
如今你能够设置定义,时”操做“单元格显示以下
a 设置Vuser初始化
初始化是指经过运行脚本中的vuser_init操做,为负载测试准备Vuser和Load Generator,在Vuser开始
运行以前对其进行初始化能够减小CPU占用量,并有利于提供更加真实的结果
在”操做“单元格中双击初始化,这时将打开”编辑操做“对话框,显示初始化操做,选择同时初始化全部Vuser
b 指定逐渐开始(从”计划操做“单元格)
经过按照必定的间隔启动Vuser,可让Vuser对应用程序施加的负载在测试过程当中逐渐增长,
帮助你准确找出系统响应时间开始边长的转折点
在”操做“单元格中双击启动Vuser,这时将打开”编辑操做“对话框,显示启动Vuser操做
在开始X个Vuser框中,输入8个Vuser并选择第二个选项:每00:00:30(30秒)启动2个Vuser
c 安排持续时间(从交互计划图)
你能够指定持续时间,确保Vuser在特定的时间段内持续执行计划的操做,以便评测服务器上的持续负载;若是设置了持续时间,
脚本会运行这段时间内所需的迭代次数,而不考虑脚本的运行时设置中所设置的迭代次数
经过单击交互计划图工具栏中的编辑模式按钮确保交互计划图处于编辑模式
在”操做“单元格中,单击持续时间或图中表明持续时间的水平线,这条水平线会忽然显示而且在端点处显示点和菱形,
在菱形端点向右拖动,直到括号中的时间显示为00:11:30,你已设置Vuser运行10分钟
注:若是菱形的前方显示了图例,请单击隐藏图例按钮显示菱形
d 安排逐渐关闭(从”计划操做“单元格)
建议逐渐中止Vuser,以帮助在应用程序到达阈值后,检测内存漏洞并检查系统恢复状况
在”操做“单元格中双击中止Vuser,这时将打开”编辑操做“对话框,显示中止Vuser操做,
选择第二个选项并输入如下值:每隔00:00:30(30秒)中止2个Vuser
思考时间和日志记录
一、打开运行时设置
在”设计“选项卡中,选择脚本并单击运行时设置按钮
经过运行时设置,能够模拟各类用户活动和行为,其中包括:
运行逻辑:用户重复一系列操做的次数
步:重复操做以前等待的时间
日志:但愿在测试期间收集的信息的级别
若是时首次运行场景,建议生成日志消息,确保万一首次运行失败时间有调试信息
思考时间:用户在各步骤之间停下来思考的时间
因为用户是根据其经验水平和目标与应用程序交互,所以,技术上更加精通的用户工做速度可能会比新用户块,
经过启用思考时间,可以使Vuser在负载测试期间更准确地模拟对应的真实用户
速度模拟:使用不一样网络链接(例如调制解调器、DSL和电缆)的用户
浏览器模拟:使用不一样浏览器查看应用程序性能的用户
内容检查:用于自动检测用户定义的错误
假设发生错误时应用程序发送了一个自定义页面,该自定义页面老是包含文字ASP Error,
你须要搜索服务器返回的全部页面,并查看是否出现文字ASP Error
你可使用内容检查运行时设置,设置LoadRunner在测试运行期间自动查找这些文字,LoadRunner将搜索这些文字
并在检测到时生成错误,在场景运行期间,你能够识别内容检查错误
二、启用思考时间
选择常规:思考时间节点,选择重播思考时间,并选择使用录制思考时间的随机百分比选项,
指定最小值为50%,最大值为150%
使用录制思考时间的随机百分比模拟熟练程度不一样的用户
三、启用日志记录
选择常规:日志节点,而后选择启用日志记录;在日志选项中,选择始终发送消息,
选择扩展日志,而后选择服务器返回的数据
注:初次调试运行后,建议不要对负载测试使用扩展日志
单击肯定关闭“运行时设置”对话框
配置Windows资源监控器
一、选择Windows资源监控器
单击Controller窗口中的运行选项卡打开“运行”视图
Windows资源图是显示在图查看区域的四个默认图之一;在后面将介绍如何打开其它图
右键单击“Windows资源”图并选择添加度量
二、选择监控的服务器
在“Windows资源”对话框的监控的服务器计算机部分,单击添加
在名称框中,输入localhost(若是Load Generator正在另外一台机器上运行,你能够输入
服务器名称或该计算机的IP地址)在平台框中输入计算机的运行平台,单击肯定
默认的Windows资源度量列在<服务器>上的资源度量下
三、激活监控器
单击”windows资源“对话框中的肯定以激活监控器
Controller”运行“视图一览
Controller窗口中的”运行“选项卡是用来管理和监控测试状况的控制中心,运行视图包含五个主要部分:
场景组窗格
场景状态窗格
可用图树
图查看区域
图例
场景组窗格:位于左上角的窗格,你能够在其中查看场景组内Vuser的状态;使用该窗格右侧的按钮能够启动、
中止和重置场景,查看各个Vuser的状态,经过收到添加更多Vuser场景运行期间应用程序的负载
场景状态窗格:位于右上角的窗格,你能够在其中查看负载测试的概要信息,
包括正在运行的Vuser数量和每一个Vuser操做的状态
可用图树:位于中间偏左位置的窗格,你能够在其中看到一列LoadRunner图,
要打开图,请在树中选择一个图,并将其拖到图查看区域
图查看区域:位于中间偏右位置的窗格,你能够在其中自定义显示画面,查看1到8个图
图例:位于底部的窗格,你能够在其中查看所选图的数据
运行场景
一、打开Controller的运行视图
选择屏幕底部的运行选项卡
注意在”场景组“窗格的关闭列中有8个Vuser,这些Vuser是在建立场景时建立的
因为还没有运行场景,全部其它计数器均显示为零,而且图查看区域内的全部图(Windows资源除外)
都为空白
二、开始运行场景
单击开始场景按钮,或者选择场景>开始来运行测试
若是你是第一次运行测试,Controller将开始运行场景,结果文件将自动保存到Load Generator的临时目录下
若是你是重复测试,系统会提示你覆盖现有的结果文件,单击否,由于首次负载测试的结果应该做为基准结果,
用来与后面的负载测试结果进行比较,”设置结果目录“对话框打开
指定新的结果目录,为每一个结果集输入一个惟一且有意义的名称,由于在分析图时你可能要将几回场景运行的结果重叠
监控信息
一、检查性能图
正在运行Vuser-整个场景图:显示在指定时间运行的Vuser数
事务响应时间-整个场景图:显示完成每一个事务所用的时间
每秒点击次数-整个场景图:显示场景运行期间Vuser每秒向Web服务器提交的点击次数(HTTP请求数)
Windows资源图:显示场景运行期间评测的Windows资源
二、突出显示单个测量值
双击Windows资源图将其放大,注意每一个测量值都显示在图例中用不一样颜色标记的行中,
每行对应图中与之颜色相同的一条线
选中一行时,图中的相应线条将突出显示,反之则不突出显示,再次双击图将其缩小
三、查看吞吐量信息
选择可用图树中的吞吐量图,将其拖放到图查看区域,吞吐量图中的测量值显示在画面窗口和图例中
吞吐量图显示Vuser每秒从服务器接收的数据总量(以字节为单位),你能够将此图
与事务响应时间图比较,查看吞吐量对事物性能的影响
若是随着时间的推移和Vuser数目的增长,吞吐量不断增长,说明带宽够用,若是随着Vuser数目的增长,
吞吐量保持相对平稳,能够认为是带宽限制了数据流量
实时观察Vuser的运行状况
一、单击Vuser按钮,这时将打开Vuser窗口
状态列显示每一个Vuser的状态,在上图中能够看到有四个正在运行的Vuser和四个已经关闭的Vuser计划程序中的
启动Vuser操做指示Controller每次释放两个Vuser,随着场景的运行,将继续每隔30秒向组中添加两个Vuser
二、从Vuser列表中选择一个正在运行的vuser
三、单击Vuser工具栏上的显示选定的Vuser按钮,将打开运行时查看器并显示所选Vuser当前执行的操做,
当Vuser执行录制的脚本中包含的各个步骤时,窗口将不断更新
四、单击Vuser工具栏上的隐藏选定的Vuser按钮,关闭运行时查看器日志
查看事件的文本概要信息
一、在Vuser窗口中选择一个正在运行的Vuser,单击显示Vuser日志按钮,打开Vuser日志窗口
日志中包含与Vuser操做对应的消息,在上面的窗口中,消息Virtual User Scipt started说明场景
已启动,滚动到日志底部,查看为所选Vuser执行的每一个操做添加的新信息
二、关闭Vuser日志窗口和Vuser窗口
在测试期间增长负载
一、在运行视图中单击运行/中止Vuser按钮,运行/中止对话框打开,显示当前分配到场景中运行的Vuser数
二、在#列中,输入要添加到组中额外的Vuser的数目,要运行2个额外的Vuser,请将#列中的数字8替换为2
三、单击运行以添加Vuser
若是某些Vuser还没有初始化,将打开运行已初始化的Vser和运行新Vuser选项,选择运行新Vuser选项
这两个额外的Vuser被分配给travel_agent组且运行在localhost Load Generator上,
场景状态窗格显示如今有10个正在运行的Vuser
注:你可能会收到警告消息,指出LoadRunner Controller没法激活额外的Vuser,这是因为你用本地计算机做为
Load Generator而且该计算机的内存资源很是有限
应用程序在负载下的运行状况
一、查看测试状态
场景状态窗格显示场景的总体情况
二、查看Vuser操做的详细信息
单击场景状态窗格中经过的事务,查看事务的详细信息列表
查看应用程序是否发生错误
一、检查全部错误信息
选择视图>显示输出,或者单击场景状态窗格中的错误
输出对话框打开,列出消息文本、生成的信息总数、发生错误的Vuser和Load Generator以及发生错误的脚本
要查看消息的详细信息,请选择该消息并单击详细信息,将打开详细信息文本框,显示完整的消息文本
下图将显示超时错误,Web服务器没有在给定时间内响应请求
二、查看详细的日志信息
你能够单击相应列中的蓝色连接以查看与错误代码相关的每一个信息、Vuser、脚本和Load Generator
例如,要肯定脚本中发生的错误的位置,请向下搜索总数列中的详细信息,输出窗口显示所选错误代码
的全部消息列表,包括时间、迭代次数和脚本中发生错误的行
打开VuGen,显示脚本中发生错误的行,你可使用这些信息找出相应速度比较慢的事务
它们致使应用程序在负载下运行失败
测试运行结束
测试运行结束时,场景状态窗格将显示关闭状态;这表示Vuser已中止运行,能够在Vuser对话框中看到
各个Vuser的状态;LoadRunner将显示Vuser重复任务(迭代)的次数、成功迭代的次数以及已用时间
场景的目标类型
在面向目标的场景中,LoadRunner提供五种不一样类型的目标:场景实现的并发Vuser数、
每秒点击次数、每秒事务数、每分钟页面数或事物响应时间
若是知道可运行各类业务流程的Vuser总数,就可使用Vuser目标类型
若是知道服务器的承载能力,就可使用每秒点击次数、每分钟页数或每秒事务数目标类型
若是知道完成事务所需的响应时间,就可使用事务响应时间目标类型;例如,若是你但愿用户在五秒钟内就能登陆
到你的电子商务网站,请将可接受的最长事务响应时间指定为五秒,并查看能够处理的实际Vuser数
建立面向目标场景
要使用各类用户档案文件模拟实际系统,能够将多个脚本分配给场景,并在这些脚本之间
分配负载百分比,应根据指望的负载设置百分比
一、建立新场景
选择文件>新建,或者单击新建打开新建场景对话框
二、选择场景类型
选择面向目标的场景
三、选择脚本
从可用脚本列表中选择basic_script,而后单击添加按钮,该脚本将显示在场景中的脚本窗格中
单击肯定,将打开LoadRunner Controller的设计视图,在脚本名称列表中显示basic_script
Controller窗口(面向目标)的设计视图分为三个主要部分:
场景脚本窗格:在此窗格中,能够肯定Vuser脚本、脚本路径、分配到每一个
脚本的总目标百分比以及Load Generator,能够在此处配置场景
服务水平协议窗格:设计负载测试场景时,能够为性能指标定义目标值或服务水平协议(SLA)
运行场景时,LoadRunner收集并存储与性能相关的数据;分析运行状况时,Analysis将这些
数据与SLA进行比较,并为预先定义的测量指标肯定SLA状态
场景目标窗格:位于下部的窗格,你能够在其中看到测试目标、达到该目标要使用的用户数、
场景持续时间和加压方式,可使用编辑场景目标对话框设置目标
建立目标配置文件并定义场景目标
一、打开编辑场景目标对话框
单击编辑场景目标按钮,或选择场景>目标定义
二、为目标配置文件指定逻辑名称
单击新建,而后在新建目标配置文件对话框中输入新目标配置文件名,单击肯定
选择器中将显示新目标配置文件名
三、定义场景目标
a 在目标类型框中,选择每秒点击次数
b 在达到目标每秒点击次数框中,输入3
c 设置LoadRunner要运行的Vuser数目范围
输入Vuser数目的最小值5和最大值10;它们必需要在服务器上同时生成
点击数的旅行社数目的最大值和最小值对应
定义负载测试行为
一、将测试配置为同时运行Vuser
在编辑场景目标对话框中选择加载行为选项卡,而后选择自动
这将指示Controller同时运行所需数目的Vuser
二、定义场景设置
在场景设置选项卡中,指定测试在达到目标后继续运行00:05:00(即5分钟)
并选择继续运行场景,无需达到目标
在负载达到每秒3次的点击次数以后,Controller再运行场景5分钟,并根据须要增长或减去必定数量的Vuser,
使实际测量值与既定目标的误差不超过6%,这样能够确保服务器能在此负载下坚持必定的时间
三、不要使用录制的思考时间
在编辑场景目标对话框的左下角,确保不选中不更改录制思考时间
若是选择此选项,LoadRunner将使用脚本中录制的思考时间运行场景,
这样的话你可能须要经过增长场景中的Vuser数来达到目标
四、关闭编辑场景目标对话框
单击肯定,关闭编辑场景目标对话框,场景目标窗口中将显示你输入的场景目标信息
五、为测试定义Load Generator
要使脚本可以运行,在场景中添加Load Generator
运行面向目标场景
一、打开Controller窗口中的运行选项卡
选择屏幕底部的运行选项卡
二、指定结果目录的名称
选择结果>结果设置,打开设置结果目录对话框,而后为结果集输入惟一的名称
三、开始场景
单击开始场景按钮,或者选择场景>开始
Controller将开始运行场景
你能够看到5个Vuser已经初始化并开始运行,同时LoadRunner尝试按照要求每秒生成3次点击
在测试期间,Controller将自动启动和中止Vuser以实现既定目标
四、查看练级图
每秒点击次数图显示在每次场景运行过程当中Vuser每秒向Web服务器提交的点击次数
(HTTP请求数),你能够看到很快就达到了所需的负载级别
事务响应时间图会显示完成每一个事务所花费的时间,观察事务响应时间以了解
服务器在负载下对客户的响应时间很是重要
你还能够经过在可用图树中选择吞吐量,并将其拖至图查看区域来查看吞吐量图,
该图显示Vuser每秒从Web服务器接收的数据
你可用监控服务器的Windows资源使用率以了解处理器、磁盘或内存利用率问题;
在测试期间进行监控能够帮助你当即定性能不佳的缘由
你能够查看Windows资源图例中的测量值列表浏览器