您的位置:首页 > 其它

LR8.0中文手册_Chapter9 高级目标情境

2007-09-30 10:47 876 查看
<本文属原创,如需转载请与本人联系>
第九章高级目标情境
在前两章,我们已经学到了如何手动建立并执行一个负载测试。在这节你可以定义你的测试需要达到的目标。
在设置应用程序之前,你需要进行验收测试来确保系统可以承受现实中预期的工作。对服务器的性能你有一个预期的比率(事先定义好的),例如点击次数或者每秒事务处理数。这个比率或许在上午分析的需求中就已经确定了,或者在上线的前一个版本中就确定了,或者通过其他方式来确定。你设置每秒的点击数,事务处理数,或者是你想要的事务响应时间,通过目标情境,LoadRunner会自动产生这些你设定的目标,同时应用程序会在限定的负载下,你可以监控事务响应时间,来查看服务器给客户提供的服务水平。
在本课中,你将会建立一个基于目标的情境,在服务器上每秒钟会发生3此点击,会有5到10个用户在这样的水平下持续5分钟的作业。
本节中设计如下话题:
Ø 我们应该用那种类型的目标?
Ø 如何建立基于目标的情境?
Ø 浏览基于目标的情境的控制器窗口
Ø 如何定义目标?
Ø 如何确定负载行为?
Ø 应该监视哪些在线图表?
Ø 如何执行基于目标的情境?
Ø 我达到设定的目标了么?
我们应该用那种类型的目标?
在基于目标的情境中,LoadRunner提供了5种类型的目标:并发的用户数,每秒钟点击次数,每秒钟事务处理次数,每分钟完成的页数,抑或在情景中你想要达到的事务响应时间。
Ø 如果你知道你的商务进程中允许的总的虚拟用户数的话,你可以将类型设置为:Virtual Users goal。
Ø 如果你知道服务器的强度的话,你可以将类型设置为:每秒点击数,每分钟访问页数,或者每秒钟事务处理数。
Ø 如果你知道完成一个事务预定的时间,你可以将类型设置为Transaction Response Time。例如:如果在你的电子商务网站上,你不想让你的用户等待时间超过5秒钟,可以设定可接受的最大响应时间时5秒,然后看有多少用户实际上得到了这个服务。
如何建立基于目标的情境
为了模拟真实各种混杂的用户群,你可以给情境设置几个脚本,并且给其指定比率。你可以根据实际经验来设置期望的负载比率。
1. 建立一个新的情境



选择File > New, 或者单击New, 打开一个新的情境对话框。



2. 选择情境类型
选择Goal-Oriented Scenario选项。
3. 选择脚本


在可用的脚本列表中选择basic_script, 单击Add。选中的脚本会显示在情境面板的脚本框中。
单击OK。LoadRunner控制器设计视图在脚本名字栏会打开basic_script
浏览基于目标的情境的控制器窗口
控制器窗口(基于目标)的Design视图中包含两个主要部分。
Ø 情境目标(Scenario Goal)
Ø 情境脚本(Scenario Scripts)



Scenario Goal:在面板的上侧,可以看到你的测试目标,为达到这个目标的虚拟用户数目,情境持续的时间,和负载行为。你可以在Edit Scenario Goal对话框中设置目标。
Scenario Scripts:在面板下侧,你确定这个虚拟用户的脚本,他们的路径,针对总体目标为每个脚本设置百分比,以及负载发生器,你可以在这里设置情境。
如何定义目标?
现在你已经选定了执行的脚本,你需要设定你想要达到的目标。
在这部分,你可以建立一个目标轮廓,定义情境目标。
1. 打开Edit Scenario Goal dialog对话框


单击Edit Scenario Goal或者选择Scenario > Goal Definition.打开
Edit Scenario Goal 对话框。



2. 给目标轮廓指定一个逻辑名字
单击New, New Goal Profile中输入新的目标轮廓的名字(例如“Hits per Second
3”),然后单击OK
输入的新的目标轮廓名会显示在选择器中。
3. 定义情境目标
在Goal Type 框中选择Hits per Second,在Reach Goal of X Hits per Second,输入3.
4. 设置LoadRunner执行时的虚拟用户范围,最大、最小值。
如何确定负载行为?
现在你已经定义了测试目标,你需要指定控制器在什么时候,怎么来达到这个目标。
在现实中用户不会同时登录或者注销。为了模拟真实用户,LoadRunner在Load Behavior这个标签中提供了这种功能,用户可以逐步登入或者登出系统。你也可能想要服务器在某种负载状况下维系一段时间。LoadRunner允许你在Scenario Settings标签中设置在某个负载存在的情况下服务持续的时间。
定义负载测试行为:
1. 在Edit Scenario Goal 对话框中,选择Load Behavior 标签,并且选择Automatic



这指定了控制器同时执行这些虚拟用户。
2. 选择Scenario setting 标签
指定在达到目标后测试还需持续5分钟,选择Continue scenario without reaching goal.



一旦达到了每秒三次点击的负载后,控制器会在额外的五分钟内持续执行这个情景,增加或者减少虚拟用户个数,以保证在设定的目标的6%浮动。这个确保在某个时期服务器可以承受一定的负载。
3. 不要使用 recorded think time
在Edit Scenario Goal对话框的左下角处确保Do
not change recorded think time 的状态时不可用。
如果将这个选项设置为可用,LoafRunner在执行情境的时候会使用你在录制脚本时的思考时间,这时为了达到你设定的目标你需要增加虚拟用户的数量。
4. 关闭Edit Scenario Goal 对话框
单击OK关闭Edit Scenario Goal对话框。在Scenario Goal 窗口中会显示你设定的情境目标的信息。



应该监视哪些在线图表?
在定义了测试目标和负载行为后,你要准备配置LoadRunner监视器了。在这个测试中,你要根据服务器产生的负载来监视每秒点击数图表。你也需要检查响应时间,这个响应时间时在有负载的情况下你的服务器对用户行为的响应时间。此外,你可以监视在负载的影响下系统的吞吐量和Windows资源图表。
每秒点击数,事务响应时间,和监视器的吞吐量是你事先已经配置过的。要配置Windows资源监视器,请参考第七章内容。
如何执行基于目标的情境?
现在你一经设置了情境和目标,即将在有负载的情况下开始测试,并监视你的应用程序。这部分,你将要执行这个基于目标的情境,并且检查测试行为。
1. 打开控制器窗口的Run标签。
在屏幕的下侧选择Run标签。
在情境还没有执行时,所有的计数器都指向0,图表都是空的,当你在下一步执行情境后,图表和计数器都会显示相应的信息。
2. 在结果目录中指定名字
选择Results> Results Settings, 打开Set Results Directory 对话框,为结果输入一个唯一的名字 (例如:“travel_agent_3hps”).
3.

单击 Start Scenario按钮
控制器开始执行情境。
你可以看到有5个虚拟用户开始执行。LoadRunner试图产生指定的目标的负载-每秒点击三次。
在测试过程中,控制器会自动开始和结束以便达到并维系这个指定的目标。
4. 查看在线图表
每秒点击次数图表显示了虚拟用户在情景执行中所有虚拟用户在服务器中的点击次数(HTTP请求)。在负载目标达到不久你就可以看到这个图表。



通过监视服务器的资源管理器,你可以监视进程,硬盘和内存的使用情况。在测试过程中的这种监视可以帮助你立即定位出性能缺口。



在度量列表中你可以检查Windows 资源图表



我达到设定的目标了么?
本课的目的时确保系统在现实的工作量情况下可以给用户提供预期的服务。为了模拟这种情况,我们设置了负载目标为在情境执行中产生每秒3次的点击率,虚拟用户数最小数量为5,最大为10。如果每秒3次的点击率是由5到10个用户在情境执行过程产生的,那么你设定的目标参数就已经达到了。如果你设定的每秒3次的点击率没有达到,LoadRunner会显示你设定的目标没有实现。

注意:由于LoadRunner的使用权现会限制你的最大虚拟用户数为10个所以你设定的目标不一定可以达到。


在你执行完测试后你需要保存这个情境以为将来进一步使用。单击File> Save 或者单击Save按钮输入情境的名字来保存情境。


下一节
现在你已经设置并执行了基于目标的情境,你可以进入第10章的学习:分析情境。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: