场景设计以及Manual Scenario和Goal-OrientedScenario的区别
Manual Scenario 手工场景
通过创建组并指定脚本、负载生成器和每个组中包括的 Vuser 数,可以生成手动方案。还可以使用“百分比模式”创建手动方案,通过该模式可以定义要在方案中使用的 Vuser 的总数,并为每个脚本分配负载生成器和占总数一定百分比的 Vuser。针对不同的测试目标,使用不同的方案。
你怎么设置的 它就怎么跑 如果你设置场景持续20分钟 它肯定是把这20分钟耗尽才会停下来 (当然如果中间出错跑不下去了另当别论)。
Goal-OrientedScenario 目标场景
场景的目标可以是性能达标的标准,也可以是远高于性能达标的标准,场景的目标是性能达标的标准,方案是lr自动生成的。面向目标的方案:选择此方法可让 LoadRunner 为您生成方案。在面向目标的方案中,可以定义通过测试要实现的目标, LoadRunner 将根据这些目标自动生成方案。
在面向目标的方案中,您可以定义您希望实现的测试目标, LoadRunner 将根据定义的目标自动为您创建一个方案。在一个面向目标的方案中,您可以定义五种类型的目标:虚拟用户数、每秒点击次数(仅 Web Vuser)、每秒事务数、每分钟页面数(仅 Web Vuser)或方案的事务响应时间。使用“编辑方案目标”对话框可以对方案目标进行定义。
它是给一个给定值 达到了这个值 就会停下来 不管运行了多少时间 2分钟达标了就2分钟停 2小时达标了就2小时停。
设计场景:
1、设计性能测试场景
Controller有两个视图:设计(Design)视图和运行(Run)视图。启动Controller,在Controller主界面里,我们可以看到这两个视图。
1、设计视图
设计视图显示场景中的所有Vuser组/脚本的列表、负载生成器(Load Generator)计算机一级分配给每个组/脚本的Vuser数。该视图还显示有关场景计划(手动场景)或目标(面向目标的场景)的基本信息。单击"Design"选项卡。

2、运行视图
场景一旦开始运行,Controller自动切换到运行视图,运行视图显示有关运行的Vuser和Vuser组的信息以及联机监视器图。单击"Run"选项卡,我们可以看到运行视图。

设计性能测试场景主要是在设计视图中完成的,我们知道在性能测试中,场景的设计是十分重要的,它决定整个性能测试的成败。
在设计视图中,场景有两种类型:手工场景和面向目标场景,其中手工场景还有百分比模式。
(1)、手工场景(Manual Scenario):创建虚拟用户组,设置虚拟用户数目以及其他Run-time信息。
手工场景是我们常用的设计模式,负载测试就常用它。手工场景符合我们的性能测试常规思路:
- 第一步,设置虚拟用户的数目、脚本以及他们运行的方式;
- 第二步,运行,得出服务器的响应时间等指标。
手工场景还有一个百分比模式:在百分比模式里,只需设定总用户数,Controller将总用户数以百分比的方式分派去执行不同的脚本。
(2)、面向目标场景(Goal-Oriented Scenario):如果说手工场景是一板一眼的因果关系,而面向目标场景就是一个稍微复杂一些的闭环回馈关系了。在面向目标场景中,我们先定义测试要达到的目标,然后LoadRunner自动基于这些目标创建场景,运行过程中,会不断地把结果和目标相比较,以决定下一步怎么走。
2、创建手工场景
1、创建虚拟用户组
虚拟用户组是执行同一脚本的虚拟用户的集合。因此在Controller中,添加了一个脚本就是添加了一个虚拟用户组。

如果在已经打开的场景中添加脚本,只需点击"Script Path"下的下拉箭头即可。

2、配置虚拟用户
首先在"Quanity"下设置虚拟用户数。

3、详细配置虚拟用户
单击右边的"Vusers"按钮,即可详细配置每个虚拟用户的设置,包括执行的脚本、分配的Load Generator。
4、设置集合点
如果在VU脚本中设置了集合点,Controller默认的集合点策略是:在所有Running状态的Vuser达到集合点后才释放。如果要改变集合点策略,可按如下步骤执行:
(1)、在"Scenario"菜单中选中"Rendezvous"。
(2)、打开设定同步点的详细设置对话框。
(3)、单击"policy"按钮,进入策略设置窗口。
Policy有三个选项:
- 第一个选项表示所有的用户到达集合点之后,再允许等待的用户继续场景执行。
- 第二个选项表示所有正在运行的用户到达集合点之后,再允许等待的用户继续场景执行。
- 第三个选项表示当指定书目的用户到达集合点之后,就允许等待的用户继续场景执行。
Timeout的设定表示,当第一个用户到达集合点后,等待30秒,如果30秒内上面三个选项设定的释放条件满足,就继续执行场景;30秒后,就不再等待,开始释放等待的用户,继续场景执行。
5、配置虚拟用户运行时设置
也就是Run-time Settings里的设置
6、配置Load Generator
Load Generator,顾名思义,是LoadRunner的负载生成器,通俗点讲,就是Controller的"手下",Controller发号施令。Load Generator负责实施和执行。通常在一台机器上安装LoadRunner后,就自动安装了Load Generator,而一个Controller可以控制多台机器上的Load Generator,让他们同意听从指挥,共同完成任务。那么Controller在给其他机器上Load Generator分配任务之前,首先要在网络上找到它。
单击右边的"Gemerators"按钮,出现"Load Generators"窗口。
添加Load Generator后,执行"Connect"操作,使Status为Ready,表示该机器连接正常了如果为Failed,表示该机器不能连接,请检查原因。可以把这个列表保存下来,执行菜单命令即可。
7、设置网络带宽配置
默认的网络带宽配置是选择最大的网络带宽。如果在性能需求中规定了用户会通过不同的网络来使用软件系统,比如Modem、ADSL等,那么就需要在Controller的Run-time Settings中设置虚拟用户的带宽了。

- 使用"运行时设置"树中的"Netword"下的"Speed Simulation"(速度模拟)节点,可设置测试环境的调制调节器仿真。
- 使用最大带宽(Use maximun bandwidth):在默认情况下会禁用带宽仿真,并且Vuser按网络上的最大可用宽带运行。
- 使用带宽(Use bandwidth):指明Vuser要模拟的特定带宽级别。可以选择从14.4-512Kbps范围内的速度,以便模拟调制调解器、ISDN或DSL。
- 使用自定义带宽(Use custom bandwidth):指明Vuser进行模拟的带宽限制,以bps为单位指定带宽。

8、设置方案(Schedule)
设置方案主要是关于LoadRunner的加载策略,也是三种场景类型的最重要区别之处。设置方案主要有如下设置项。

1、Initialize

第一个选项是场景开始运行时,同时加载所有用户;
第二个选项是场景开始时,每隔多长时间增加多少用户;
第三个选项是在场景开事前就加载好每个用户;
2、Start Vusers

以多少个用户开始;
(1)、同时启动所有用户;
(2)、每隔多长时间增加多少个用户;
3、Duration

第一个选项,每个用户运行一次场景就停止;
第二个选项,运行持续时间。
4、Stop Vusers

停止(多少)用户;
1、同时停止所有用户;
2、每隔多长时间停止多少个用户;
场景设计以及Manual Scenario和Goal-OrientedScenario的区别的更多相关文章
- loadrunner 场景设计-目标场景设计
场景设计-目标场景设计 by:授客 QQ:1033553122 A. 概述 Goals Types for Goal-Oriented Scenarios 在以目标为向导的场景中,定义你想实现的测 ...
- 【Loadrunner】初学Loadrunner——场景设计
在使用Loadrunner的时候,常常需要使用到场景设计.但是怎么设计一个满意的场景?如何开展? 首先可以点击tools > Create Controller Scenario > OK ...
- loadrunner 场景设计-手工场景设计
场景设计-手工场景设计 by:授客 QQ:1033553122 概述 通过选择需要运行的脚本,分配运行脚本的负载生成器,在脚本中分配Vuser来建立手工场景 手工场景就是自行设置虚拟用户的变化,主要是 ...
- loadrunner11的移动端性能测试之场景设计
测试步骤之场景设计(Controller) 进入手工场景 准备好脚本后就可以进行场景设计和执行场景了,从VuGen中进入,见下图: 进入后第一个为目标场景,选择第二个更灵活的手工场景,我的目标人数20 ...
- Loadrunder场景设计篇——手工场景设计
概述 通过选择需要运行的脚本,分配运行脚本的负载生成器,在脚本中分配Vuser来建立手工场景 手工场景就是自行设置虚拟用户的变化,主要是通过设计用户的添加和减少过程,来模拟真实的用户请求模型,完成负载 ...
- loadrunner 场景设计-手工场景设计
概述 通过选择需要运行的脚本,分配运行脚本的负载生成器,在脚本中分配Vuser来建立手工场景 手工场景就是自行设置虚拟用户的变化,主页是通过设计用户的添加和减少过程,来模拟真实的用户请求模型,完成负载 ...
- LoadRunner脚本设计、场景设计和结果分析
本次笔记主要记录LoadRunner脚本设计.场景设计和结果分析 1. 脚本设计 录制模式 手工模式:插入步骤.手动编写 1.1 脚本增强: ...
- loadrunner 场景设计-设置结果文件保存路径
场景设计-设置结果文件保存路径 by:授客 QQ:1033553122 Results->Results settings Results Name 结果文件夹名称 Directory 指定结果 ...
- loadrunner 场景设计-添加Unix、Linux Resources计数器
场景设计-添加Unix.Linux Resources计数器 by:授客 QQ:1033553122 A. 目的 监控要测试的Unix.Linux服务器的资源使用情况 Linux CentOS为例 ...
随机推荐
- JS中将字符串中每个单词的首字母大写化
今天看到一个帖子,处理js中字符串每个单词的首字母大写. 原贴地址:关于字符串中每个单词的首字母大写化问题 受到启发,自己跟着改写了几个版本如下,请大家指正. 1.for循环: var a = 'Hi ...
- 我眼中的DevOps(转)
过去一年以来,一批来自欧美的.不墨守陈规的系统管理员和开发人员一直在谈论一个新概念:DevOps.DevOps 就是开发(Development)和运维(Operations)这两个领域的合并.(如 ...
- C++实现不能继承的类
实现一个不能继承的类,这在Java等语言中是很好实现的,被final关键字修饰的类不能被继承. C++中没有类似的关键字,须自己实现.一般有如下两种方法: 1.设置构造方法与析构方法为私有 class ...
- Look for this newest GS Jordan 6 Floral
Named 'Bulls Over Broadway' and 'Gym Red', the most recent variation from the New Jordans 2015 is fo ...
- 深入理解JS对象和原型链
函数在整个js中是最复杂也是最重要的知识 一个函数中存在多面性: 1.它本身就是一个普通的函数,执行的时候形成的私有作用域(闭包),形参赋值,预解释,代码执行,执行完 成后栈内存销毁/不销毁. 2.& ...
- topcoder SRM712 Div1 LR
题目: Problem Statement We have a cyclic array A of length n. For each valid i, element i-1 the l ...
- windows平台kettle连接hbase的问题
我本机安装的环境是centos7,并在本机上安装了zookeeper,hadoop,hbase,hive等组件, 使用pdi7.1来连接hbase,把mysql表中的数据导出到hbase中去,没有问题 ...
- SqlHelper简单实现(通过Expression和反射)6.Providor模式(工厂+策略)可配置数据库选择
基本思想,将MsSqlDbUtility和MySqlDbUtility设计成单例模式,通过App.config或Web.config进行默认的数据库设置,然后通过DbUtilityFactory获取D ...
- 为MarS Board安装无线网卡Linux驱动
玩了几天MarS Board,发现要了解Linux是如何工作的,从嵌入式开发板玩起最有效率.因为会遇到无数的问题和未知领域,然后在解决问题的过程中有深入了解Linux的机会. 为这块开发板专门买了 ...
- 20145312 《Java程序设计》第八周学习总结
20145312 <Java程序设计>第八周学习总结 学习笔记 Chapter 15时间与日期 15.1 日志 15.1.1 日志API简介 java.util.logging包提供了日志 ...