Loadrunder场景设计篇——定时器(schedule)
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:可以定义什么时候开始运行虚拟用户组(Group和Scenario的主要区别),每次运行多少个虚拟用户,场景持续运行多久
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表格中添加一个action到schedule
步骤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)的更多相关文章
- 【转】Loadrunder场景设计篇——添加windows Resource计数器和指标说明
转至:https://www.cnblogs.com/langhuagungun/p/8488270.html Loadrunder场景设计篇——添加windows Resource计数器和指标说明 ...
- Loadrunder场景设计篇——手工场景设计
概述 通过选择需要运行的脚本,分配运行脚本的负载生成器,在脚本中分配Vuser来建立手工场景 手工场景就是自行设置虚拟用户的变化,主要是通过设计用户的添加和减少过程,来模拟真实的用户请求模型,完成负载 ...
- Loadrunder场景设计篇——IP欺骗
适用协议 LoadRunner的多ip功能允许运行在单一负载生成器上的Vuser可以通过多ip被识别.服务器和路由识别这些vuser为来自不同负载生成器上. 2 在负载生成器(load gene ...
- Loadrunder场景设计篇——添加windows Resource计数器和指标说明
目的 监控要测试的windows服务器的资源使用情况 A.添加计数器步骤 1.添加视图,方法双击.拖动左侧的Windows Rescources到右边图形区,或右键右侧已有视图,Open a New ...
- Loadrunner场景设计篇——负载生成器
1 简介 当执行一个场景时,Controller把场景中的每个用户配到负载生成器(Load generator). 所谓的负载生成器(Load Generator)就是执行Vuser脚本,运行Vus ...
- loadrunner 场景设计-手工场景方案(Schedule)设计
场景设计-手工场景方案(Schedule)设计 by:授客 QQ:1033553122 A. 定义方案schedule 在 Scenario Schedule面板中,选择一个方案schedule, ...
- loadrunner 场景设计-手工场景方案(Schedule)设计 Part 2
loadrunner 场景设计-手工场景方案(Schedule)设计 Part 2 ---------------------------接Part 1------------------------ ...
- loadrunner 场景设计-手工场景方案(Schedule)设计 Part 1
参考:http://blog.sina.com.cn/s/articlelist_5314188213_1_1.html loadrunner 场景设计-手工场景方案(Schedule)设计 Part ...
- cocos2dx基础篇(6) 定时器schedule/update
定时器在大部分游戏中是不可或缺的,即每隔一段时间,就要执行相应的刷新体函数,以更新游戏的画面.时间.进度.敌人的指令等等.cocos2dx为我们提供了定时器schedule相关的操作.其操作函数的定义 ...
随机推荐
- a标签点击事件
onclick="detail(this,'${vo.id}')" function detail(obj,id){ var lb = $("#lb").val ...
- text样式
text-stroke(文本描边)和text-fill-color(文本填充色)注意点: 目前这两个属性只有webkit内核的Safari和Chrome支持,例如: -webkit-text-stro ...
- 第一百四十六节,JavaScript,百度分享保持居中--下拉菜单
JavaScript,百度分享保持居中--下拉菜单 百度分享保持居中 效果图 html代码 <div id="share"> <h2>分享到</h2& ...
- 【C++自我精讲】基础系列五 隐式转换和显示转换
[C++自我精讲]基础系列五 隐式转换和显示转换 0 前言 1)C++的类型转换分为两种,一种为隐式转换,另一种为显式转换. 2)C++中应该尽量不要使用转换,尽量使用显式转换来代替隐式转换. 1 隐 ...
- 【POJ】2942 Knights of the Round Table(双连通分量)
http://poj.org/problem?id=2942 各种逗.... 翻译白书上有:看了白书和网上的标程,学习了..orz. 双连通分量就是先找出割点,然后用个栈在找出割点前维护子树,最后如果 ...
- 【R】自定义描述统计函数-从均值到峰度偏度
data_show<-function(x) { n<-length(x) m<-mean(x) v<-var(x) s<-sd(x) me<-median(x) ...
- 浏览器配置工具.bat
在Web安装的ActiveX控件,默认安装在C:\WINDOWS\Downloaded Program Files目录下,但是有时候由于Internet Explorer的安全设置,会阻止Active ...
- jeesite学习笔记(一) 项目框架
JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台. 在github上,对jeesite平台有详细的介绍,这里稍作整理,给出项目的内置功能 ...
- Rnqoj (未出现的子串)
题目链接:传送门 题目大意:略: 题目思路:DP思想 读入数据后,从后向前遍历,假如我们是要找一个长度为n的以1开头的数字串的所有序列,那么可以将它表示为1+(任意数开头的长度为n-1的序列) 然后我 ...
- MySQL 1067
今天在云服务器上装mysql的时候,启动突然报了一个“1067 进程意外终止”的错误,这个错误之前是遇到过的,之前因为my.ini配置basedir路径的时候没有正确配置导致了这个错误,但是今天又出现 ...