loadrunner 场景设计-目标场景设计
场景设计-目标场景设计
by:授客 QQ:1033553122
A. 概述
Goals Types for Goal-Oriented Scenarios
在以目标为向导的场景中,定义你想实现的测试目标,lr基于这些目标为你自动创建场景。
可以为目标为向导的场景定义以下类型的目标:
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选择需要在场景运行的脚本。
b)
添加负载生成器
点击Load
Generator
按钮
(或者Scenario->Load
generators),
在打开的Load
Generators对话框中点击Add并输入你要添加的负载生成器的详细信息
或者如下
点击添加Add
注意:这里的名称可以是ip也可以计算机名、localhost(本机)
点击More
添加后
点击Connect
这里如果Temporary
directory目录为空,那么运行时, LoadRunner存储临时文件在负载生成器上,由负载生成器变量TEMP、TMP变量指定的临时目录.
c)
为每个脚本指定负载生成器
在场景脚本面板中,为每个脚本,点击Load
Generators列并选择用于运行脚本的load
generator
d)
为场景定义目标
在场景目标Scenario
Goal界面上,点击Edit
Scenario Goal按钮,在打开对话框中定义场景应该达到的目标。
e)
为每个脚本指定场景总目标百分比( percentage
of the total scenario target)
在场景脚本面板中 % of
Target列,为每个脚本输入你想每个脚本达到整个目标的百分比。
说明:如果只有一个脚本则为100%.
f)
定义Service
Level Agreements(可选)
你可以定义服务水平协议(service
level agreements.SLAs)
来测量场景目标。在时间间隔内或者整个场景运行期间测量场景目标。
当你稍后用HPLoadrunner
Analysis分析工具分析运行,这些数据在SLAs下进行比较,并且SAL状态将作为定义的测量
loadrunner 场景设计-目标场景设计的更多相关文章
- loadrunner中面向目标场景的设计
在一个面向目标的方案中,可以定义五种类型的目标:虚拟用户数.每秒点击次数(仅 Web Vuser).每秒事务数.每分钟页面数(仅 Web Vuser)或方案的事务响应时间.使用“编辑方案目标”对话框可 ...
- LoadRunner脚本设计、场景设计和结果分析
本次笔记主要记录LoadRunner脚本设计.场景设计和结果分析 1. 脚本设计 录制模式 手工模式:插入步骤.手动编写 1.1 脚本增强: ...
- loadrunner 场景设计-手工场景方案(Schedule)设计
场景设计-手工场景方案(Schedule)设计 by:授客 QQ:1033553122 A. 定义方案schedule 在 Scenario Schedule面板中,选择一个方案schedule, ...
- loadrunner 场景设计-手工场景设计
场景设计-手工场景设计 by:授客 QQ:1033553122 概述 通过选择需要运行的脚本,分配运行脚本的负载生成器,在脚本中分配Vuser来建立手工场景 手工场景就是自行设置虚拟用户的变化,主要是 ...
- 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 ...
- loadrunner基础学习笔记七-面向目标场景
部署应用程序之前,要执行验收测试以确保系统能够承担预期的实际工作量. 可以为想要生成的每秒点击次数,每秒事务数或事务响应时间设置目标 loadrunner将使用面向目标的场景自动生成所需的目标,当应用 ...
- 搭建LoadRunner中的场景(一) 创建场景
一.创建场景 1. 使用场景创建设置对话框 场景分类: 1. 人工场景:相比面向目标场景,人工场景在实际工作中的应用更为广泛. 2. 面向目标场景:预先定义了一个测试目标,LoadRunner将根据这 ...
- LoadRunner创建脚本和场景流程
1)脚本创建流程创建脚本->选择协议-设置录制选项-录制脚本-停止录制-优化脚本(去掉无用内容)-强化脚本(注释.代码结构调整.参数化.检查点.事物.关联)-调试脚本(观察日志) 2)场景设置的 ...
随机推荐
- Windows10开发手记-Windows App Certification Kit使用教程
最近有同学通过MVP的渠道询问我Windows 10应用提交审核前是否有工具能够像win7一样做App兼容性测试,其实Windows SDK已经继承了一套优秀的App测试认证工具,这可以帮助我们快速通 ...
- 实现文本在标签内平均分布的css样式
这里有一个容器,添加了一段文字,想让它们平均分布达到标签flex布局的效果,而不是靠左.靠右或者居中显示. 添加样式: text-align: justify; text-align-last: ju ...
- tomcat容器是如何创建servlet类实例?用到了什么原理?
当容器启动时,会读取在webapps目录下所有的web应用中的web.xml文件,然后对 xml文件进行解析,并读取servlet注册信息.然后,将每个应用中注册的servlet类都进行加载,并通过 ...
- (转)你真的会写单例模式吗——Java实现
http://www.runoob.com/design-pattern/singleton-pattern.html 单例模式可能是代码最少的模式了,但是少不一定意味着简单,想要用好.用对单例模式, ...
- String 字符串中含有 Unicode 编码时,转为UTF-8
1.单纯的Unicode 转码 String a = "\u53ef\u4ee5\u6ce8\u518c"; a = new String(a.getBytes("UTF ...
- Deep Reinforcement Learning: Pong from Pixels
这是一篇迟来很久的关于增强学习(Reinforcement Learning, RL)博文.增强学习最近非常火!你一定有所了解,现在的计算机能不但能够被全自动地训练去玩儿ATARI(译注:一种游戏机) ...
- Tensorflow学习笔记(2):tf.nn.dropout 与 tf.layers.dropout
A quick glance through tensorflow/python/layers/core.py and tensorflow/python/ops/nn_ops.pyreveals t ...
- 【Shell实战】定期清理日志文件的shell脚本
功能描述:清理/var/log/路径下的messages历史日志文件(messages-date),但不清理messages文件本身 依赖要求:服务器上安装了bc模块 # clean_logs.sh ...
- BizTalk Orchestration execute Flat file disassembler ReceivePipeline
需求是这样,在一个inbound XML中有个一点节点使用平文件的方式存放,还要解析比如固定长度或根据特殊字符截取字段 也就是需要在流程里面先把输入的XML的节点先读出来,这个方式有很多可以直接升级属 ...
- [Luogu 3787] 冰精冻西瓜
Description 琪露诺是拥有操纵冷气程度的能力的妖精,一天她发现了一片西瓜地.这里有n个西瓜,由n-1条西瓜蔓连接,形成一个有根树,琪露诺想要把它们冷冻起来慢慢吃. 这些西瓜蔓具有神奇的性质, ...