loadrunner 脚本优化-参数化之场景中的参数化取值
脚本优化-场景中的参数化取值
by:授客 QQ:1033553122
Action()
{
lr_eval_string("{NewParam}");
lr_eval_string("{NewParam}");
return 0;
}
参数设置:


举例说明
打开Tools>Create
Controller Scenario选项,弹出如下图,选中Manual
Scenario(手工场景),虚拟用户数为5个,其他选项使用默认

点击上图的OK,打开如下界面


Schedule设置


2、Run-Time
Settings->Log,打开日志


注意:
确保Log
options是Always
send message,并且选中Parameter
substitution,否则在场景日志中看不到参数取值的结果
3.确认测试结果目录。打开Results-
>Results Settings,设置生成的测试报告所在目录及对应的结果名。如下图


4.运行整个场景,单击Start
Scenario按钮或者按F5键。几秒中后脚本就执行完,到对应目录下,查看日志文件(也可以在场景中直接查看),文件名形式:脚本名_用户编号.log的形式。几个用户就会有几个文件,如果脚本出错,对应该用户的日志就不会生成。


步骤5:在Run
Logic中设置迭代次数2,然后运行脚本,接着看不同的取值方式在场景中的效果
注意:如果需要修改场景脚本执行的iteration,必须在Controller的Run-
time Settings中进行修改,而不能修改VuGen中的Run-time
Settings
顺序取值


随机取值


唯一取值
当选择Unique取值时,在Parameter
List里面会有一个新的选项,Allocate
Vuser values in the Controller,三种情形,分别按如下设置




运行结果:


更改参数配置,添加值:N,如下,再测试


运行结果:


说明:
1、在Unique这种选项下,虚拟用户之间的取值是不同的,并且遵守唯一性取值,如果用户分配不到该值,那么就提示错误!
2、Continue
in cycle manner:缺少参数值时,循环取值,特别要注意的是,仅在每个用户获取到的参数值范围内进行循环,见上述运行结果,比如Vuser2,获取到3个参数值,D,E,甲,第一次迭代,获取DE,第二次迭代,可获取的参数值仅有甲,还少一个,咋办?按策略,从头开始取,取D,这里的头不是从A开始的,而是分配Vuser2的参数值中的第一个,同理下面的Continue
with the last Value也不是从最后一个N开始的,而是分配给用户的参数值中的最后一个
3、Aclocate
X values for each Vuser:为每个用户分配X个参数值,例中,按上述的分配方式,可得到如下图,即每个用户分配到的具体参数
4、Automatically
allocate block size(自动分配块):检查一个脚本有多少次迭代,然后让用户根据迭代次数分配该迭代大小的数据块


更改参数配置如下,继续测试


运行结果:


loadrunner 脚本优化-参数化之场景中的参数化取值的更多相关文章
- loadrunner 脚本优化-参数化之Parameter List参数同行取值
脚本优化-参数化之Parameter List参数同行取值 by:授客 QQ:1033553122 select next row 记录选择方式 Same line as,这个选项只有当参数多余一个时 ...
- loadrunner 脚本优化-参数化之Parameter List参数取值
脚本优化-参数化之Parameter List参数取值 by:授客 QQ:1033553122 参数取值选项 Select next row Update value on 以上两个选项是改变参数化取 ...
- loadrunner脚本中写入脚本输出log到外部文件,分析参数取值方式
loadrunner脚本中写入脚本输出log到外部文件,分析参数取值方式 分类: 心得 loadrunner 我的测试 2012-04-01 12:52 2340人阅读 评论(0) 收藏 举报 脚本l ...
- loadrunner 脚本优化-事务时间简介
脚本优化-事务时间简介 by:授客 QQ:1033553122 事务概念 事务是指用户在客户端做一种或多种业务所需要的操作集(actions),通过事务开始和结束函数可以标记完成该业务所需要的操作内容 ...
- 关于模板中的动态取值 ---反射与javascript脚本编译
在项目中经常遇到一个问题,打印word或者打印excel的时候,我们经常使用一对一的赋值或者批量替换的方式来对模板进行修改. 但是现在遇到两种场景: 1.取值是通过自定以方法进行取值的. 如:一个销售 ...
- C#中float的取值范围和精度
原文:C#中float的取值范围和精度 float类型的表现形式: 默认情况下,赋值运算符右侧的实数被视为 double. 因此,应使用后缀 f 或 F 初始化浮点型变量,如以下示例中所示: floa ...
- C语言中数据类型的取值范围
C语言中数据类型的取值范围如下:char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65536 (2 ...
- mybatis中两种取值方式?谈谈Spring框架理解?
1.mybatis中两种取值方式? 回答:Mybatis中取值方式有几种?各自区别是什么? Mybatis取值方式就是说在Mapper文件中获取service传过来的值的方法,总共有两种方式,通过 $ ...
- LoadRunner脚本优化之—参数化迭代介
在LoadRunner的脚本优化时,有时发送给服务器的请求参数化时,服务器返回的内容也会和参数化的内容相对应,例如发送的请求带有查询key=123,则服务器也会返回含有123相关的内容.这时我们在使用 ...
随机推荐
- Linux的 文件 和 目录 管理
包括了文件和目录的创建.删除.修改,权限.压缩.搜索.分区.挂载 简单的一些命令: [ pwd ]查看当前所在目录 [ cd .. ]上级目录 [ cd ~ ]当前用户的家目录 [cd -]上次打开目 ...
- python通过手机抓取微信公众号
使用 Fiddler 抓包分析公众号 打开微信随便选择一个公众号,查看公众号的所有历史文章列表 在 Fiddler 上已经能看到有请求进来了,说明公众号的文章走的都是HTTPS协议,这些请求就是微信客 ...
- ORM基本操作回顾
连接数据库 默认是MySQLdb 指定引擎 dialect[+driver]: //user:password@host/dbname[?key=value..]: from sqlalchemy i ...
- springBoot(6)---过滤器,监听器,拦截器
过滤器,监听器,拦截器 一.理解它们 看里十几篇博客,总算有点小明白,总的来讲,两张图可以让我看明白点. 通过两幅图我们可以理解拦截器和过滤器的特点 1.过滤器 过滤器是在请求进入tomcat容器后, ...
- 网站 HTTP 升级 HTTPS 完全配置手册
网站 HTTP 升级 HTTPS 完全配置手册 今天,所有使用Google Chrome稳定版的用户迎来了v68正式版首个版本的发布,详细版本号为v68.0.3440.75,上一个正式版v67.0.3 ...
- mysql 开发进阶篇系列 16 MySQL Server(myisam key_buffer)
一.概述 mysql 提供了很多参数来进行服务器的设置,当服务第一次启动的时候,所有启动参数值都是系统默认的.这些参数在很多生产环境下并不能满足实际的应用需求.在这个系列中涉及到了liunx 服务器, ...
- java--uploadify3.1多文件上传
使用uploadify时,建议下载uploadify3.1文档.边做边看. 这是页面端: <label style="color:#15428B;font-weight:bold;&q ...
- MySQL高可用之组复制(4):详细分析组复制理论
MySQL组复制系列文章: MySQL组复制大纲 MySQL组复制(1):组复制技术简介 MySQL组复制(2):配置单主模型的组复制 MySQL组复制(3):配置多主模型的组复制 MySQL组复制( ...
- MySQL中间件之ProxySQL(1):简介和安装
返回ProxySQL系列文章:http://www.cnblogs.com/f-ck-need-u/p/7586194.html 1.ProxySQL简介 之前的文章里,介绍了一个MySQL的中间件: ...
- 第一册:lesson sixty nine.
原文: The car race. There is a car race near our town every year. In 1995 ,there was a very big race. ...