loadrunner 场景设计-目标场景设计

场景设计-目标场景设计

by:授客 QQ1033553122

A.   概述

Goals Types for Goal-Oriented Scenarios

在以目标为向导的场景中,定义你想实现的测试目标,lr基于这些目标为你自动创建场景。

loadrunner 场景设计-目标场景设计loadrunner 场景设计-目标场景设计

可以为目标为向导的场景定义以下类型的目标

loadrunner 场景设计-目标场景设计loadrunner 场景设计-目标场景设计

1)  
Virtual
Users

该目标测试你的应用是否可以同步运行指定数量的Vuser。运行这类goal-oriented场景和运行一个手工场景类似。


2)  

Pages
per Minute/Hits per Second/Transactions per Second

这些目标测试服务器能力。对于每个目标,你可以为要运行的场景指定Vuser最小-最大范围。

在有Transactions
per Second目标类型情形下还可以指定一个事务名。

Note:

1、 
Pages per Minute and Hits per Second目标仅用于Web
Vusers。

2、 
Hits per second
和HTTP
requests per second相关。

当你定义这些目标类型之一时,Controller首先用指定的最小用户数除以定义的目标,得到一个值,然后确定每个用户必须达到的hits/transactions
per second或pages
per minute

然后Controller

根据你定义的负载行为加载Vusers.

如下:

1、 
如果你选择了自动运行Vuser(Load
behave->Automatic),lr会在第一批加载50个用户。如果定义的最大Vuser数少于50,lr同时加载所有Vuser。

2、 
如果选择的是场景运行一段时间后达到目标,lr就会尝试在这段时间内实现目标。它根据你定义的时间限制及每个用户的点击数,事务数,页面数的计算判断第一批要加载多少用户。

3、 
如果选择通过渐变(x
number of pages/hits every x amount of time)来实现目标,lr计算每个用户应该达到的点击数或页面数的目标数量并判断相应的第一批Vuser数量大小

(Not relevant for the Transactions per Second goal
type).

运行每批Vuser后,lr评估每批用户的目标是否已实现。如果没实现,lr重新计算每个用户hits,tranction,pages的目标数量,并为下一批重新调整vuser数量来实现定义的目标。默认的,每两分钟就释放一批vuser。

如果使用了最大数量的用户后,目标未实现,lr通过重新计算target
number of hits, transactions, or pages per Vuser来尝试再次实现定义的目标并同时运行最大数量的Vuser。

Pages per Minute or Hits/Transactions per Second

目标为向导的场景被标记为Failed状态,如果:

1、 
控制器已经两次用指定的最大数量的Vuser尝试实现目标,且目标不能被实现

2、 
第一批Vuser运行后,没有pages
per minute or hits/transactions per second被登记。

3、 
在controller运行一定数量的批次后,pages
per minute or hits/transactions per second的数量不增加。

4、 
所用的Vuser运行失败

5、 
没可用的负载生成器供指定用户用。


3)  

Transaction
Response Time

这个目标测试不超出预期事务响应时间的情况下,有多少用户可以同时运行。可以在脚本中指定事务名,供lr运行的Vuser数量最小最大范围。你指定的事务响应时间应该是一个预定义阈值。例如,如果你不想一个客户登录你的e商务网站的等待超过5分钟,指定一个5分钟可接受事务时间.为服务器可以同时服务的客户数设置最小,最大vuser数。

如果你的场景不能实现你定义的最大事务响应时间,说明你的服务器还有能力接纳定义的虚拟用户的最大数量。如果使用了一部分Vuser,就达到了定义的响应时间或者lr提示如果使用了最多数量的虚拟用时将要超过最大响应时间,那么你应该考虑改造你应用或者更新服务器软件和硬件。.


4)  


关注每秒事务数
(Transactions
per Second )
、事务响应时间(Transaction
Response Time
):

1、为了实现一个每秒事务数或事务反应时间,脚本必须包含事务。对于每个这些目标类型,在脚本中定义你想测试的事务。

2、为了使事务反应时间为目标导向的场景有效,必须小心选择事务,确保它在服务器上执行有效


B.  


目标场景设计步骤


a)  


打开或创建一个场景

1、Start
> Program Files > LoadRunner > Applications
>Controller,在主控制条上点击

New Scenario按钮
.

2、在New
Scenario对话框中,选择Manual
Scenario.

3、从Available选择需要在场景运行的脚本。

loadrunner 场景设计-目标场景设计

loadrunner 场景设计-目标场景设计
 


b)  


添加负载生成器

点击Load
Generator

按钮
(或者Scenario->Load
generators),

在打开的Load
Generators对话框中点击Add并输入你要添加的负载生成器的详细信息

loadrunner 场景设计-目标场景设计

loadrunner 场景设计-目标场景设计

或者如下

loadrunner 场景设计-目标场景设计loadrunner 场景设计-目标场景设计

点击添加Add

注意:这里的名称可以是ip也可以计算机名、localhost(本机)

loadrunner 场景设计-目标场景设计

loadrunner 场景设计-目标场景设计

点击More

loadrunner 场景设计-目标场景设计loadrunner 场景设计-目标场景设计

添加后

loadrunner 场景设计-目标场景设计loadrunner 场景设计-目标场景设计

点击Connect

loadrunner 场景设计-目标场景设计

loadrunner 场景设计-目标场景设计

这里如果Temporary
directory目录为空,那么运行时, LoadRunner存储临时文件在负载生成器上,由负载生成器变量TEMP、TMP变量指定的临时目录.


c)  


为每个脚本指定负载生成器

在场景脚本面板中,为每个脚本,点击Load
Generators
列并选择用于运行脚本的load
generator

loadrunner 场景设计-目标场景设计

loadrunner 场景设计-目标场景设计


d)  


为场景定义目标

在场景目标Scenario
Goal界面上,点击Edit
Scenario Goal
按钮,在打开对话框中定义场景应该达到的目标。

loadrunner 场景设计-目标场景设计

loadrunner 场景设计-目标场景设计
 


e)  


为每个脚本指定场景总目标百分比(
percentage
of the total scenario target

在场景脚本面板中 % of
Target
列,为每个脚本输入你想每个脚本达到整个目标的百分比。

loadrunner 场景设计-目标场景设计

说明:如果只有一个脚本则为100%.

loadrunner 场景设计-目标场景设计


f)  


定义
Service
Level Agreements
(可选)

你可以定义服务水平协议(service
level agreements.SLAs)
来测量场景目标。在时间间隔内或者整个场景运行期间测量场景目标。
当你稍后用HPLoadrunner
Analysis分析工具分析运行,这些数据在SLAs下进行比较,并且SAL状态将作为定义的测量

上一篇:netfiler源代码分析之框架介绍


下一篇:CSV Data Set Config设置