可能稍微对LR 有些了解的人都知道LR 参数化的功能,今天请跟我来一起好好理一下。

首先,咱们先说一下为啥要用参数化?假如您录制了一个登录的脚本,如下所示,

web_submit_form("do_login",
"Snapshot=t2.inf",
ITEMDATA,
"Name=username", "Value=jim_daniel", ENDITEM,
"Name=password", "Value=jim_daniel", ENDITEM,
"Name=_mw_submit", "Value=Sign In", ENDITEM,
EXTRARES,
LAST);

  代码中的用户名和密码都是固定的一个值,如果在controller 中使用该脚本跑场景的话,那所有的Vuser 都会使用脚本中的同一个用户名(代码中加下划线的部分)去登录,这和我们的愿望有些差别,我们期望的是不同的vuser 使用不同的用户名登录,这样就跟真实的场景一样了,那么这就是为什么要用参数化的原因,我们可以把我们希望使用的用户名和密码预先设置在两个参数中,然后设置参数值的分配方式和更新方式以使得不同的用户使用不同的用户名去登录。

好了,明白了为什么要用参数化,下面咱们具体说一下参数化的使用方法。

每个Vuser 去参数表中取的参数值的方式是由参数值的分配方式(Select next row)和更新方式(Update value on)共同决定的。参数值的分配方式有Sequential(顺序的),Random(随机的),Unique(唯一的)三种方式。

  • Sequential(顺序的):每个Vuser 顺序的从参数表中取得参数值。如参数表中有A, B, C三个值,Vuser1 取的参数值是A, Vuser2 取的值是B,Vuser3 取的是C, 如果参数值的数量小于Vuser的数量时,那么Vusers 会再从头开始循环取得参数值。
  • Random(随机的):调用参数时,随机地分配参数表中的一个参数值。
  • Unique(唯一的):顺序的为参数分配一个唯一值。

提示:当数据分配方式选择Sequential 和Random 时,所有Vuser 从同一个参数值集合中取按照分配方式取得参数值;当数据分配方式选择Unique(唯一的)的时候,每个Vuser 获得参数值的集合是不一样的,当你选择此种分配方式时,Allocate Vuser values in the controller部分会可用(如下图所示),有两种方式一种是自动分配数据块的大小(默认的数据块的大小=Iteration 的次数),另一中是指定为每个用户分配多大的数据块。

好了说完数据分配方式了,下面说一下数据更新方式。数据更新方式有以下几种:Each iteration,Each occurrence(只在参数类型为File时使用), Once。下面把数据分配方式和数据更新方式结合起来列出每种结合方式的结果应该是怎么样的:

更新方式

分配方式

(Sequential)顺序的

(Random)随机的

(Unique)唯一的

Each iteration(每个迭代)

在每次迭代中每个用户顺序的去取下一个值。

每次迭代中,每个用户随机去取参数值。

每个迭代中每个用户从唯一的位置去取参数值。(这个地方不会去判断参数表中的数据是不是重复,它所说的唯一是指的取的位置的唯一性,而不是数据。也就是说如果一个用户被分配了两个重复的值,那么在第二个迭代中也是会取第二个值的)

Each occurrence(只适用于数据文件类型的参数)

当参数出现时,每个用户顺序的去取下一个参数值,即使是在一个迭代中。

当参数出现时,每个用户随机的去取下一个参数值。即使是在一个迭代中。

用户从分配的数据块中取唯一值当遇到参数时,不同的迭代也算是遇见。注意这里是会判断参数表中的数据是不是重复的,不允许取的新值是跟已经取过的数据是重复的。

Once(一次)

每个用户使用的都是参数表中第一个值,并且每个迭代中都会保持这个值。

每个用户使用随机分配的值(这个值会在整个参数表中选取),并且每个迭代中都会保持这个值。

每个用户使用唯一的值(这个值会在分配给他的数据块中选取),每个迭代的值都会保持这个值。

LoadRunner 参数化详解的更多相关文章

  1. LoadRunner参数化详解

    LoadRunner参数化详解 距离上次使用loadrunner 已经有一年多的时间了.初做测试时在项目中用过,后面项目中用不到,自己把重点放在了工具之外的东西上,认为性能测试不仅仅是会用工具,最近又 ...

  2. LoadRunner参数化详解(转)

    距离上次使用loadrunner 已经有一年多的时间了.初做测试时在项目中用过,后面项目中用不到,自己把重点放在了工具之外的东西上,认为性能测试不仅仅是会用工具,最近又想有一把好的利器毕竟可以帮助自己 ...

  3. [转]LoadRunner参数化详解

    http://www.cnblogs.com/fnng/archive/2012/06/22/2558900.html 距离上次使用loadrunner 已经有一年多的时间了.初做测试时在项目中用过, ...

  4. LoadRunner参数化详解【转】

    距离上次使用loadrunner 已经有一年多的时间了.初做测试时在项目中用过,后面项目中用不到,自己把重点放在了工具之外的东西上,认为性能测试不仅仅是会用工具,最近又想有一把好的利器毕竟可以帮助自己 ...

  5. Loadrunner安装详解

    安装 1. 运行"setup.exe" 2. 点击安装,其中会有提示缺少"Microsoft Visual C++ 2005 SP1运行组件",下载这 个组件. ...

  6. 接口测试参数化详解(Jmeter)

    简介 接口测试是目前最主流的自动化测试手段,它组合不同的参数向服务器发送请求,接受和解析响应结果,通过测试数据的交换逻辑来验证服务端程序工作的正确性.我们在测试过程中需要考虑不同的输入组合,来覆盖不同 ...

  7. loadrunner 功能详解(一) - Run-time Settings

    1.General / Run Logic  Number of Iterations:说明的是反复循环的次数. 常境的时间中,如果时间设为5分钟,而实际上程序的运行只需要1分钟,而在这项中,选择的是 ...

  8. jmeter5.2版本 配置元件之参数化详解

    1.方式1 :CSV Data Set Config : 打开方式:配置元件---csv data set config 作用:用于读取txt.csv文件数据,注意:默认txt.csv文件的第一行内容 ...

  9. loadrunner11.0 安装破解详解使用教程

    loadrunner11.0 安装破解详解使用教程 来源:互联网 作者:佚名 时间:01-21 10:25:34 [大 中 小] 很多朋友下载了loadrunner11但不是很会使用,这里简单介绍下安 ...

随机推荐

  1. JS判断上传图片格式是否正确

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  2. 、Dll文件的编写 调用 说明

    1>新建Dll文件TestLib.dll 新建Unit文件U_TestFunc U_TestFunc代码如下: unit U_TestFunc; interface uses //尽可能的少us ...

  3. EventLog组件

    1.使用EventLog组件读写事件日志 SourceExists方法  确定事件源是否已在本地计算机上注册 DeleteEventSource方法  用于从事件日志中移除应用程序的事件源注册 pri ...

  4. Oracle删除所有表

    Oracle 清理用户所有的表 PLSQL中执行语句 select 'drop '||object_type||' '||object_name||';' from user_objects; 结果集 ...

  5. BZOJ 3998 [TJOI 2015] 弦论 解题报告

    这是一道后缀自动机经典题目. 对于 $t=0$ 的情况:每个节点都代表一个子串,所以我们给每个节点的 $Size$ 都记为 $1$, 对于 $t=1$ 的情况:我们只给 $last$ 节点的 $Siz ...

  6. 各大搜索引擎的User-Agent

    baidu:Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html) Google:Moz ...

  7. 从Clarifai的估值聊聊深度学习

    从Clarifai的估值聊聊深度学习 [转载请注明出处] 前几天和 Ayden @叶瀚中 聊天时,提到了 www.clarifai.com 这家公司. 此前,我已经从各方消息中听说过创始人Matt Z ...

  8. apk签名《转》

    出处!:http://jeff-pluto-1874.iteye.com/blog/847366 我觉得写的不错就转载了. 一.Android Apk签名Apk签名首先要有一个keystore的签名用 ...

  9. packinfo-java的作用

    package-info.java 包的作用 1. 为标注在包上的Annotation提供便利 2. 声明包的私有类和常量 3. 提供包的整体注释说明   代码说明: package-info.jav ...

  10. SQLite Version3.3.6源代码文件结构

    Version 3.3.6源代码文件结构                                                ——整理:hustcat 2009-2-19 文件名称 大小by ...