LoadRunner中,参数化时Unique取值方式的理解
LoadRunner中,参数化时Unique取值方式的理解
在LoadRunner中进行参数化时,Parameter的取值设置有以下相关参数:
取值方式:
Sequence:顺序
Random:随机
Unique:唯一
改变(更新)取值的时机:
EachIteration:每次迭代
EachOccurrence:每次出现
Once:只改变一次
Unique的使用,理解起来相对困难些,此处重点讲解该取值方式。
当我们取值方式选为Unique,更新取值时机选为EachIteration时,还有一个选项可设置,那就是:allocate Vuser values in the controller:它有两个选项:1、automaticallyallocate block size;2、allocate _____values for each Vuser.因为我们选择了“每次迭代”更新取值的方式,所以可以指定是由系统自动分配Vuser的参数值数量,还是人为指定为每个Vuser分配的参数值数量。其实很多时候,参数化的数据量在长时间执行压力测试的时候,并不够用,我们通常会选择人为指定为每个Vuser分配参数值数量。那么这个数量如何确定呢?
业务场景举例:
1. 用户在10分钟内不能重复登录,否则断开该账号的所有登录连接;
2. 现在要评估大量用户成功登录后,查看个人资料,对系统造成的压力情况;
分析:录制的脚本包括登录和查看个人资料,且需保证10分钟内用户不会重复登录。需对登录用户的账号进行参数化处理,取值方式需使用unique,此处采用File来做参数化。假设File中usename的值有10000个,在执行场景时,设置的Vuser数为100个。
username值的分配方式:
迭代次数 Vuser数 每个Vuser分配的参数值数量
100 100 1*100;2*100;….;100*100 用到参数值总量:10000
99 100 1*99;2*99;….;100*99 用到参数值总量:9900
101 100 1*101;1*101;….;100*101 用到参数值总量:10100
(注:第3项的 *前是vuser的编号,*后是每个Vuser最多可以取多少个不同的值)
针对上述3中分配方式,在Vuser数和参数值总量固定的情况下,每个Vuser分配的参数值数量实际就是迭代次数。迭代次数小于或等于100时,参数值总量是够用的;迭代次数大于100时,参数值总量就不够用了,执行压力测试时就会报错,故我们需要保证参数值总量够用。那么该选项:2、allocate _____values for each Vuser的数值,必须小于等于100。(注:这个迭代次数的最大值:参数化值总量/Vuser数(整数部分))
假设上述选项,填写的是100,与之相关的最后一个相关选项的解释:
When outof values:
1、 中止:abort Vuser
2、 循环Vuser分配到的列表
3、 只循环最后一个列表项
假设选定2,当迭代次数达到100后,从第101次迭代开始,Vuser使用第1次迭代用过的取值,第102次迭代使用第2次迭代使用过的取值,依次类推;
假设选定3,当迭代次数达到100后,从第101次迭代开始,Vuser一直使用第100次迭代的取值。
LoadRunner中,参数化时Unique取值方式的理解的更多相关文章
- jmeter读取文件进行参数化时随机取值实现
jmeter能用来做参数化的组件有几个,但是都没有随机取值的功能,遇到随机取值的需求怎么办呢? 突发奇想,可以用函数_StringFromFile来实现,先来介绍下此函数: 此函数位于函数助手中, 函 ...
- Loadrunner中参数化取值方式分析
Loadrunner中参数化取值依赖两个维度: 1.取值顺序分为“顺序”“随机”“唯一”. select next row:Sequential , Random,unique 2.更新值时分为 ...
- loadrunner脚本中写入脚本输出log到外部文件,分析参数取值方式
loadrunner脚本中写入脚本输出log到外部文件,分析参数取值方式 分类: 心得 loadrunner 我的测试 2012-04-01 12:52 2340人阅读 评论(0) 收藏 举报 脚本l ...
- LoadRunner参数化之数据取值和更新方式
其实看LR已经很久了,每次看到参数化的取值更新时,都没有看透,了解个大概就为止了,也确实挺搞脑子的. 现在理解下来 分成2部分 取值方式 Select next row 如何从数据列表中取值 Seq ...
- loadrunner 参数化取值方式详解
参数化对话框中与参数取值方式有关的区域如下: 改变参数化的取值方式,关键在于Select next row和Update value on这两个选项. Select next row包括以下选项: S ...
- mybatis中两种取值方式?谈谈Spring框架理解?
1.mybatis中两种取值方式? 回答:Mybatis中取值方式有几种?各自区别是什么? Mybatis取值方式就是说在Mapper文件中获取service传过来的值的方法,总共有两种方式,通过 $ ...
- php的form中元素name属性相同时的取值问题
php的form中元素name属性相同时的取值问题:修改元素的名称,在名称后面加上 '[]',然后取值时即可得array()数组. 一.以复选框为例: <html> <head> ...
- 转:LoadRunner中参数化技术详解
LoadRunner中参数化技术详解 LoadRunner在录制脚本的时候,只是忠实的记录了所有从客户端发送到服务器的数据,而在进行性能测试的时候,为了更接近真实的模拟现实应用,对于某些信息需要每次提 ...
- 牛客网Java刷题知识点之Map的两种取值方式keySet和entrySet、HashMap 、Hashtable、TreeMap、LinkedHashMap、ConcurrentHashMap 、WeakHashMap
不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...
随机推荐
- 题解报告:poj 1113 Wall(凸包)
Description Once upon a time there was a greedy King who ordered his chief Architect to build a wall ...
- adb logcat教程
1.速查 $adb logcat -g //打印和缓冲区使用情况 $adb logcat -c main //清除main缓存区 $adb logcat -v threadtime -f /data/ ...
- Vue 页面加载闪现代码问题
CSS中 [v-cloak] { display: none; } HTML中 <div v-cloak> {{ message }} </div> 显示代码主要是{{}}这个 ...
- idea安装mybatis插件
简介 mybatis_plus主要的作用是自动导航,如下图 点击箭头会跳转到对应的dao接口中,同样,dao接口中也有这样的箭头,点击之后会跳转到对应的sql映射语句处. 还有一个功能就是检查mapp ...
- Visual studio每次build自动增加版本号
关键词:visual studio,rc file,VS_VERSION_INFO,FILEVERSION,PRODUCTVERSION 目标:希望每次在vs中编译项目时,生成的可执行程序版本号自动+ ...
- axios的简单封装及在组件内使用
/**第一步 * 配置编译环境和线上环境之间的切换 * baseUrl: 域名地址 * routerMode: 路由模式 * imgBaseUrl: 图片所在域名地址 * */ let Host = ...
- OpenJudge_2757:最长上升子序列
描述一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的.对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1 ...
- Unity Shader-热空气扭曲效果
GrabPass GrabPass是Unity为我们提供的一个很方便的功能,可以直接将当前屏幕内容渲染到一张贴图上,我们可以直接在shader中使用这张贴图而不用自己去实现渲染到贴图这样的一个过程,大 ...
- 苹果面临起诉:App Store 涉嫌垄断吗?
今日导读 现代社会,手机在手,啥也不愁.购物不用带钱包,网上支付可以搞定一切:旅游懒得背相机,修图 App 帮你打造最美的自己.看直播.学英语.玩游戏.听音乐,我们的生活已经充斥着各类 App.据悉, ...
- WebDriverException: Message: unknown error: Chrome failed to start: crashed
the last answer WebDriverException: Message: unknown error: Chrome failed to start: crashed