A.   定义方案schedule

在 Scenario Schedule面板中,选择一个方案schedule,或通过点击New Schedule定义一个新的方案

定义schedule:

a、新建schedule:点击新建按钮(可选)

b、重命名schedule:在Schedule Name输入新的名字并点击Save New Name(可选).

c、选择schedule类型,Schedule by: Scenario 或 Group.

d、选择运行模式Run mode: Real-world 或Basic

说明:

1.对所有schedule默认的运行模式都是Real-word.你可以改变缺省模式为Basic。Tools > Options > Execution tab

2. Schedule by Scenario和Group的区别

Real-world Schedule和Basic schedule的区别:根据官方文档,这两种模式下,场景中的每个虚拟用户组(可看成是每个脚本)都会按照它们自己的Run-Time settings中的设置运行。区别在于可模拟的操作不一样:

Schedule by:Scenario

Basic Schedule:可以定义每次运行多少用户,场景持续运行多久

Real-world Schedule:同Basic schedule,除此之外,还可以设置每次停止多少个用户。

Schedule by:Group(该设置在百分比模式下不可见)

Basic schedule:可以定义什么时候开始运行虚拟用户组(GroupScenario的主要区别),每次运行多少个虚拟用户,场景持续运行多久

Real-world Schedule:同Basic Schedule,除此之外,还可以设置每次停止多少个虚拟用户

双击Group Schedule下的Start Group Action,打开Start Group策略,设置脚本在手工场景下的Group模式中如何开始运行

 

B.   schedule定义action(Global schedule)

Actions表格展示了默认的与步骤2选择的shedule对应的actions。

Schedule Actions.

一个场景schedule包含了一系列actions,指导场景什么时候运行Vuser group,怎么初始化虚拟用户,合适开始和停止虚拟用户,及运行一个action要花的时间。

 

注意:

脚本中带集合点会妨碍场景方案的运行。如果有包含集合点,场景可能不会按照你设定的方案运行。

说明:

1)   Start Group

定义何时开始运行Vuser Group

1、Start immediately after the scenario begins(缺省)

LoadRunner在场景一运行就开始运行Vuser Group

2、Start <00:00:00> (HH:MM:SS) after the scenario begins

场景运行后,LoadRunner等待指定的时间后开始运行Vuser group.

3、Start when group finishes

指定Vuser group运行完成后,LoadRunner马上开始运行该Vuser group.

注意:Start Group仅在group schedule类型中可用,而且总是作为第一个action出现.

2)   Initialize

指导LoadRunner准备Vusers,以便于他们处于准备运行状态.

1、Initialize all Vusers simultaneously

在LoadRunner在运行vuser前初始化所有Vusers.

注意:选择该设置可能会导致运行出错:error-27796 failed to connect to server

2、Initialize XX Vusers every <00:00:00> (HH:MM:SS)

LoadRunner在运行vuser前,根据指定的时间间隔,逐渐初始指定数量的Vuser,

3、Initialize each Vuser just before it runs(Default)

LoadRunner在运行它们前初始化每一个Vuser

注意:

Wait for all groups to initialize选项被选中时,必须等所有的Vuser group完成对虚拟用户的初始化后才运行

该选项对于group scenario不可用

3)   Start Vusers

指示loadRunner开始运行Vusers。

1、Start XX Vusers: Simultaneously(Default)

指定LoadRunner运行场景的虚拟用户总数

2、Start XX Vusers: YY Vusers every <00:00:00> (HH:MM:SS)

LoadRunner按指定的时间间隔,逐步运行指定数量XX个Vusers,也就是说LoadRunner运行指定数量的一组Vusers,并且等待指定时间后运行指定下一组Vuser.

3、点击Previous 或Next可切换其它要编辑的action.

注意:

1.当且仅当Vuser处于Ready状态时,LoadRunner才开始运行Vuser.

2.Basic运行模式下默认运行所有用户

4)   Duration

持续时间

Real-world schedule

Basic schedule

1、Run until completion

按Controller中Run-time settings -> logic中的迭代次数进行迭代,迭代完成则停止运行。

2、Run for x days and xx:xx:xx

忽略Run-time settings -> logic中设置的迭代次数,重复迭代运行脚本的action,直到时间结束为止, 也就是说,此处设置的持续时间的优先级高,

也就是说:

1、即使你指定了迭代次数,但是运行时间没有结束之前,还是会一直迭代,所以实际迭代次数可能大于你设置的迭代次数;

2、还有一种情况是,迭代次数还没完,但是运行时间已经到了,此时会将当前执行的Action执行完,停止迭代,此种情况下实际迭代次数小于你设置的迭代次数。

3、Run indefinitely

无限运行

C.   Actions表格中添加一个actionschedule

步骤1:打开添加Action对话框

方法1、在指定action后插入一个action,选择这个action并点击Add Action After

方法2、在最后一个action后添加一个action,在Action表格中双击最后一行

步骤2:在Add Action对话框中,定义新的action

注意:这里的Start Vuser数量的设置,会改变上方的组或脚本的虚拟用户数量Quatity

步骤3:点击Apply.

步骤4:继续添加另一个action,点击Add Another Action并重复步骤2,3

D.   schedule graph中添加action

你可从schedule graph添加Start Vusers, Duration, and Stop Vusers actions通过把一个action拆分成两个或者在最后一个action后添加一个action

a)   把一个action拆分成两个:

1.  点击编辑模式按钮,确保graph处于编辑模式

方法2、在最后一个action后添加一个action,在Action表格中双击最后一行

步骤2:在Add Action对话框中,定义新的action

注意:这里的Start Vuser数量的设置,会改变上方的组或脚本的虚拟用户数量Quatity

步骤3:点击Apply.

步骤4:继续添加另一个action,点击Add Another Action并重复步骤2,3

2.  选择代表你要拆分的action的线条

Tip: 选择线条,会自动高亮左侧的action

3.  点击Split Action按钮,选中的线条自动被拆分成成两段.

在Actions表格中,原始的action分成两个相等的action,每个代表原始action的一半,如下

4.  (可选)编辑每个actions

E.   graph中编辑(仅real-world schedules可用)

双击代表action的线条,或者graph处于编辑模式时,选择线条并拖拽

F.   复制一个组的schedule到另一个组(Goup Schedule可用)

当方案类型为Vuser group时,你可以复制一个Vuser group的方案设置给到另一个Vuser组

注意:方案设置的复制包含方案运行模式(basic 或 real-world)及方案actions集。

例:

从group1复制schedule到group2并应用,在Scenario Groups中点击脚本,然后点击Copy Schedule Settings From(见下图红色圈圈),选择group_1,确定

G.   定时启动场景

在Schedule定义区,点击Start Time按钮并选择啥时候启动场景。

注意:这里设置完成后还要点击运行场景,然后才会在设置的时间进行执行。

Loadrunder场景设计篇——定时器(schedule)的更多相关文章

  1. 【转】Loadrunder场景设计篇——添加windows Resource计数器和指标说明

    转至:https://www.cnblogs.com/langhuagungun/p/8488270.html Loadrunder场景设计篇——添加windows Resource计数器和指标说明 ...

  2. Loadrunder场景设计篇——手工场景设计

    概述 通过选择需要运行的脚本,分配运行脚本的负载生成器,在脚本中分配Vuser来建立手工场景 手工场景就是自行设置虚拟用户的变化,主要是通过设计用户的添加和减少过程,来模拟真实的用户请求模型,完成负载 ...

  3. Loadrunder场景设计篇——IP欺骗

    适用协议 LoadRunner的多ip功能允许运行在单一负载生成器上的Vuser可以通过多ip被识别.服务器和路由识别这些vuser为来自不同负载生成器上.   2  在负载生成器(load gene ...

  4. Loadrunder场景设计篇——添加windows Resource计数器和指标说明

    目的 监控要测试的windows服务器的资源使用情况 A.添加计数器步骤 1.添加视图,方法双击.拖动左侧的Windows Rescources到右边图形区,或右键右侧已有视图,Open a New ...

  5. Loadrunner场景设计篇——负载生成器

    1  简介 当执行一个场景时,Controller把场景中的每个用户配到负载生成器(Load generator). 所谓的负载生成器(Load Generator)就是执行Vuser脚本,运行Vus ...

  6. loadrunner 场景设计-手工场景方案(Schedule)设计

    场景设计-手工场景方案(Schedule)设计 by:授客 QQ:1033553122 A.   定义方案schedule 在 Scenario Schedule面板中,选择一个方案schedule, ...

  7. loadrunner 场景设计-手工场景方案(Schedule)设计 Part 2

    loadrunner 场景设计-手工场景方案(Schedule)设计 Part 2 ---------------------------接Part 1------------------------ ...

  8. loadrunner 场景设计-手工场景方案(Schedule)设计 Part 1

    参考:http://blog.sina.com.cn/s/articlelist_5314188213_1_1.html loadrunner 场景设计-手工场景方案(Schedule)设计 Part ...

  9. cocos2dx基础篇(6) 定时器schedule/update

    定时器在大部分游戏中是不可或缺的,即每隔一段时间,就要执行相应的刷新体函数,以更新游戏的画面.时间.进度.敌人的指令等等.cocos2dx为我们提供了定时器schedule相关的操作.其操作函数的定义 ...

随机推荐

  1. 第二百二十八节,jQuery EasyUI,TreeGrid(树形表格)组件

    jQuery EasyUI,TreeGrid(树形表格)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 TreeGrid(树形表格)组件的使 ...

  2. jquery取iframe中元素

    采取方法: $("#iframe_path").contents().find(".select_path_hide").val(); DOM方法:父窗口操作I ...

  3. hdu 3001(状压dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3001 思路:这道题类似于TSP问题,只不过题目中说明每个城市至少要走一次,至多走2次,因此要用到三进制 ...

  4. java 环境变量classpath的作用

    http://www.cnblogs.com/xwdreamer/archive/2010/09/08/2297098.html http://www.cnblogs.com/panxuejun/p/ ...

  5. python入门(二):数据类型和结构

    Python3 中有六个标准的数据类型:tips:用type()函数或者是isinstance(x,int)来判断数据类型,然后for i in 来遍历集合1.Number(数字支持 int.floa ...

  6. Django model :add a non-nullable field 'SKU' to product without a default; we can't do that

    You are trying to add a non-nullable field 'SKU' to product without a default; we can't do that (the ...

  7. SurvivalShooter学习笔记(八.敌人管理器)

    敌人管理器:管理敌人的随机出生点创建 在场景中建立几个空物体,作为敌人的出生点 public class EnemyManager : MonoBehaviour { public PlayerHea ...

  8. 面试题思考:Java 8 / Java 7 为我们提供了什么新功能

    Java 7 的7个新特性 1.对集合类的语言支持: 2.自动资源管理: 3.改进的通用实例创建类型推断: 4.数字字面量下划线支持: 5.switch中使用string: 6.二进制字面量: 7.简 ...

  9. 显示所有APP的进程详细信息(进程ID、进程所在UID、进程占用内存、进程名)

    main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:and ...

  10. Jmeter - 分布式部署负载机

    1. 原理图: 2.具体操作 ① 负载机 安装JDK.Jmeter[版本与Controller 调度机一致] ② 配置环境变量 ③ 负载机自定义端口号 a.进入Jmeter的bin目录,找到Jmete ...