LoadRunner中参数化技术详解

2023-05-16

LoadRunner中参数化技术详解

LoadRunner在录制脚本的时候,只是忠实的记录了所有从客户端发送到服务器的数据,而在进行性能测试的时候,为了更接近真实的模拟现实应用,对于某些信息需要每次提交不同的数据,或者使用多个不同的值进行循环输入。这时,在LoadRunner中就可以进行参数化设置,以使用多个不同的值提交应用请求。

【参数化】使用指定数据源中的值来替换脚本录制生成的语句中的参数。

【好处】

l  减少脚本的大小

l  提供使用不同的值执行脚本的能力,更加真实的模拟现实应用。

【参数化步骤】

l  用参数替换Vuser脚本中的常量值

l  为参数设置属性和数据源

【操作步骤】

1. 在脚本中选择需要参数化的内容,单击鼠标右键,从弹出菜单中选择Replace with a parameter。


2. 在弹出的对话框中设置参数名称、参数类型。


3. 单击对话框中的Properties按钮,可以设置参数数据池中的内容以及参数的取值方式。


数据类型:

序号

参数类型

说明

1

Date/Time

在需要输入日期、时间的地方,可以用Date/Time来代替,可以选择日期格式,也可进行定制。

2

Group Name

该类型的参数用执行脚本的VU所属组的名称来替代。但是在VuGen中运行时,该值为None。

3

LoadGenerator Name

LoadRunner使用该虚拟用户所在的Load Generator机器名来代替参数。

4

Iteration Number

LoadRunner使用该测试脚本当前循环的次数来代替参数

5

Random Number

随机数,可以设置产生随机数的范围

6

Unique Number

唯一值来代替参数

7

Vuser ID

LoadRunner使用该虚拟用户的ID来代替参数值,该ID是由Controller来控制的,在VuGen中运行脚本时,该值为-1.

8

DataFile/Table

可以在属性设置中编辑文件,添加内容,也可以从数据库中提取数据。

9

UseDefinedFunction

从dll的简单函数中获取信息替代参数

 

【注意】对于参数类型为File/Table的数据文件:

l  在参数数据显示区中,最多只显示前100条数据,之后的不显示,但不影响正常取数据。

l  在记事本中编辑参数数据时,数据文件一定要以一个空行结束,否则,最后一行输入的数据不会被参数所使用。

对于参数类型为File/Table的参数的更新方式:

Update Value on

(更新方法)

Select next row

(数据分配方法)

Sequential顺序

Random随机

Unique唯一

Each Iteration(每次迭代)

对于每次迭代,Vuser会从数据表中提取下一个值

对于每次迭代,Vuser会从数据表中提取新的随机值。

对于每次迭代,Vuser会从数据表中提取下一个唯一值。

Each Occurrence(每次出现)

参数每次出现时,Vuser将从数据表中提取下一个值,即使在同一迭代中。

参数每次出现时,Vuser将从数据表中提取新的随机值,即使在同一迭代中。

参数每次出现时,Vuser将从数据表中提取新的唯一值,即使在同一迭代中。

Once(一次)

对于每一个Vuser,第一次迭代中分配的值,将用于所有后续的迭代。

第一次迭代中分配的随机值将用于该Vuser的所有迭代。

第一次迭代中分配的唯一值将用于所有的后续迭代。

 

 

举例:

假设存在:
数据:A、B、C
虚拟用户:Vuser1、Vuser2、Vuser3
脚本中参数出现三次,脚本迭代三次
怎样取下一行数据?
Sequential:顺序,所有虚拟用户按照顺序读取数据表
Random:随机,所有虚拟用户随机形式读取数据表
Unique:唯一,所有虚拟用户每次各取一值(不重复)
什么时候访问数据表完成数据更新?
Each iteration:每次迭代以后
Each occurrence:每次出现参数
Once:每出现一个虚拟用户

实例:
顺序
Sequential + Each iteration
第一次迭代 无论参数任何时候出现 Vuser1、Vuser2、Vuser3 取A
第二次迭代 无论参数任何时候出现 Vuser1、Vuser2、Vuser3 取B
第三次迭代 无论参数任何时候出现Vuser1、Vuser2、Vuser3 取C
Sequential + Each occurrence
第N次迭代 参数第一次出现 Vuser1、Vuser2、Vuser3 取A
第N次迭代 参数第二次出现 Vuser1、Vuser2、Vuser3 取B
第N次迭代 参数第三次出现 Vuser1、Vuser2、Vuser3 取C
Sequential + Once
第N次迭代 无论参数任何时候出现 Vuser1取A Vuser2取B Vuser3取C

所有用户均取A
随机
Random + Each iteration
第N次迭代 无论遇到该参数多少次 Vuser1都只取A,或者B,又或者C,本次迭代不再更新
第N次迭代 无论遇到该参数多少次 Vuser2都只取A,或者B,又或者C,本次迭代不再更新
第N次迭代 无论遇到该参数多少次 Vuser3都只取A,或者B,又或者C,本次迭代不再更新
在N+1次迭代,每个Vuser重新随机抽取数据

Random + Each occurrence
第N次迭代 第一次遇到该参数 Vuser1、Vuser2、Vuser3在A、B、C中随机抽取一个
第N次迭代 第二次遇到该参数 Vuser1、Vuser2、Vuser3重新在A、B、C中随机抽取一个
第N次迭代 第三次遇到该参数 Vuser1、Vuser2、Vuser3重新在A、B、C中随机抽取一个
在N+1次迭代,每个Vuser继续保持每遇到一次参数就重新抽取一次数据
Random + Once
第N次迭代 无论遇到该参数多少次 Vuser1都只取A,或者B,又或者C
第N次迭代 无论遇到该参数多少次 Vuser2都只取A,或者B,又或者C
第N次迭代 无论遇到该参数多少次 Vuser3都只取A,或者B,又或者C
在N+1次迭代,每个Vuser不会重新抽取数据
唯一
注意:使用该Unique类型必须注意数据表有足够多的数。
比如Controller 中设定20 个虚拟用户进行5 次循环,那么编号为1 的虚拟用户取前5个数,编号为2 的虚拟用户取6-10 的数,依次类推,这样数据表中至少要有100个数据,否则Controller 运行过程中会返回一个错误。
因此以下例子在数据表中加入数据D、E、F、G、H、I。
Unique + Each iteration
第一次迭代 无论参数出现多少次 Vuser1取A Vuser2取D Vuser3取G
第二次迭代 无论参数出现多少次 Vuser1取B Vuser2取E Vuser3取H
第三次迭代 无论参数出现多少次 Vuser1取C Vuser2取F Vuser3取I
Unique + Each occurrence
第一次迭代 第一次出现该参数 Vuser1取A Vuser2取D Vuser3取G
第一次迭代 第二次出现该参数 Vuser1取B Vuser2取E Vuser3取H
第一次迭代 第三次出现该参数 Vuser1取C Vuser2取F Vuser3取I
Unique + Once
无论进行多少次迭代 无论参数任何时候出现 Vuser1取A Vuser2取B Vuser3取C
数据D、E、F、G、H、I不取

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LoadRunner中参数化技术详解 的相关文章

  • LoadRunner 90 Percent设置

    90 Percent 的设置 xff1a tools xff08 工具 xff09 options xff08 选项 xff09 General选项卡最下面有个Summary Report
  • LoadRunner错误及解决方法总结[转]

    一 Step download timeout 120 seconds 这是一个经常会遇到的问题 解决得办法走以下步骤 1 修改run time setting中的请求超时时间 增加到600s 其中有三项的参数可以一次都修改了 HTTP r
  • loadrunner error:27796解决方法

    使用loadrunner进行web性能测试时 高并发场景以及高性能的服务器 负载机可能导致压测出现大量Error 27796 Failed to connect to server 10 2 9 147 80 10048 服务器ip和端口
  • 关于压力测试评定方式

    一个完整的压力测试需要关注三个方面 如何正确产生压力 如何定位瓶颈 如何预估系统承载力 1 首先说一下如何产生压力 压力方法有很多 通常可以写脚本产生压力机器人对服务器进行发包和收包操作 也可以使用现有工具 如jmeter loadRunn
  • 性能测试LoadRunner深入浅出

    Da01 一 初步概念 1 功能测试 测试软件产品的功能是否达到要求 如 ATM取款 在线取款 是否成功 转账成功 表示功能实现了 一个人 2 性能测试 测试软件产品的性能是否达到要求 包括 时间性能 多用户共同使用时的性能 如 ATM取款
  • 【性能测试】loadrunner12.55教程(一)--知识准备

    目录 1 0 前言 1 1 性能测试术语介绍 1 1 1 响应时间 Response time 1 1 2 并发用户数 1 1 3 吞吐量 Throughput 1 1 4 吞吐率 Throughout 1 1 5 TPS Transact
  • lr中需要注意的点--安装后打不开ie需要设置的地方

    前提 Loadrunner11仅支持ie9向下版本 若安装了ie10则需要在查看一安装的更新中卸载 1 设置ie浏览器为默认浏览器 2 计算机 gt 属性 gt 高级系统管理 gt 性能 gt 设置 过程中会提示重启 3 tools gt
  • 【IT之路】LoadRunner系列-Win7 64bit下搭建Loadrunner11破解版

    一直想提升下性能测试知识 但是都因为这样那样的原因 没有实际上系统梳理下 在此 刚好空出时间来了 一步步把性能测试知识重新拾一下 本文介绍的是在vmware的环境下进行的Loadrunner环境搭建 一 环境准备 Win7 64bit Lo
  • LoadRunner+Android模所器实现抓包并调试本地服务端

    为了测试Android软件的服务端的功能 需要重现某些客户端操作 便于发现功能问题 性能问题 也方便客户端与本机服务端特别是服务端代码进行断点调试 这个时候需要对网络操作进行重现 loadRunner是hp公司开发的压力测试工具 功能比较强
  • loadrunner关于回放脚本时session失效的问题

    在使用loadrunner录制脚本后 进行回放时 会出现session已经失效的情况 为解决这个问题 就应该将请求中的userSession进行参数化 使其自动获得当前的userSession 具体脚本如下 在我们打开连接时 首先我们会向服
  • LoadRunner--并发测试(多用户)

    并发测试 多用户进行并发测试 即在同一时刻同时进行某种操作 1 何时使用集合点 并发测试时使用 2 并发测试的两个条件 1 脚本中加入集合点 在事务开始之前添加集合点 则所有虚拟用户执行到集合点时停止 等待并发 2 控制台中设置集合点策略设
  • LoadRunner参数化详解

    LoadRunner参数化详解 距离上次使用loadrunner 已经有一年多的时间了 初做测试时在项目中用过 后面项目中用不到 自己把重点放在了工具之外的东西上 认为性能测试不仅仅是会用工具 最近又想有一把好的利器毕竟可以帮助自己更好的完
  • Loadrunner 8.1 安装 & 卸载收藏(转载)

    Loadrunner 8 1 安装 1 下载Loadrunner8 1 官方英文版 2 安装Loadrunner8 1 3 破解 http download csdn net source 1348756 l 具体安装操作步骤如下 用虚拟光
  • loadrunner12使用问题总结

    以下只是针对我在使用中 问题对应的解决方案 可能不适用于所有 1 启动录制 浏览器卡着不动 原因1 浏览器版本过高 不兼容 官方文档的说明是支持ie11 firefox24 chrome30 我降低版本后firefox24正常了 chrom
  • 使用loadrunner12选择谷歌录制,出现一直在加载的状态,进不去

    选择了浏览器和URL 点击录制 弹出浏览器 一直在加载 而且进入其他网址也进不去了 需要重新打开浏览器才可以 我本来以为是项目的问题 又打开了loadrunner自带的订票系统 发现在谷歌浏览器也是一样的 但是在ie浏览器却都可以正常打开
  • LR11_RUN-TIME SETTINGS配置解读

    LR11中RUN TIME SETTINGS重要配置解读 1 配置入口 右键选中任意一个ACtions 2 Run Logic配置说明 PS LR12还多一个脚本执行策略的配置 多个ACTION时是顺序执行 还是随机执行 3 Pacing配
  • Loadrunner11.0安装与简单使用

    Loadrunner下载 https pan baidu com s 1TtBlfp9W7FM8MVjmxa5Irw 提取码 96d0 1 解压loadrunner与破解包 2 打开文件夹运行setup exe 3 点击loadrunner
  • LoadRunner 引入在eclipse中写的java项目,并介绍LR的使用(不是简单的打印语句项目)

    摸索了4天中终于在LoadRunner中把java脚本编译通过了 可以正常的运行Java脚本进行性能测试 一 介绍环境 eclipse JDK1 8 32位的 LR12 55 如果有需要LR12 55的小伙伴 在百度网盘直接下 链接 htt
  • LoadRunner下载和安装

    文章目录 一 下载地址 二 安装步骤 三 安装过程中遇到的问题 一 下载地址 官方下载地址 https my microfocus com myproducts 网盘下载地址 https pan baidu com s 1hiGC9FjfK
  • 在 HP Load Runner 的 VuGen 中加载 javai.dll 时出现错误

    当我尝试在 HP load runner 的 VuGen 中编译一个简单的脚本时 无法启动 JVM 并出现以下错误 Java VM Internal Error Getting Error Loading javai dll 我在用着 HP

随机推荐

  • [足式机器人]Part3机构运动微分几何学分析与综合Ch02-4 平面机构离散运动鞍点综合——【读书笔记】

    本文仅供学习使用 本文参考 xff1a 机构运动微分几何学分析与综合 王德伦 汪伟 微分几何 吴大任 Ch02 4 平面机构离散运动鞍点综合 2 5 平面四杆机构离散运动鞍点综合2 5 1 平面机构的运动综合类型2 5 1 1 高阶运动综合
  • 解决从excel导入\导出日期格式数据时的问题

    从excel 导入日期会自动转换成一个数字 number格式 xff09 这个数字是减掉1900年1月1日的天数后得到的 例如 25569就是 1970 01 01 public import target DataTransfer Obs
  • 数据清洗(Data Cleaning)

    数据清洗 数据清洗 Data Cleaning 目录 隐藏 1 什么是数据清洗 1 2 数据清洗原理 2 3 数据清洗的实现方式与范围 2 4 数据清洗的方法 3 5 相关条目 6 参考文献 编辑 什么是数据清洗 1 数据清洗 是指发现并纠
  • QT笔记——QT工具uic,rcc,moc,qmake的使用和介绍

    uic xff0c rcc xff0c moc xff0c qmake 都是 qt 的工具 uic 主要是 编译 ui文件 ui xxx cpp rcc 主要是 编译 资源文件 qrc文件 xxx rcc moc 主要是 编译 带有Q OB
  • spring 中常用的设计模式

    一 Spring 中常见的设计模式 工厂模式 xff1a BeanFactory 装饰器模式 xff1a BeanWrapper 代理模式 xff1a AopProxy 单例模式 xff1a ApplicationContext 委派模式
  • 阿里云 docker 前后端分离部署 nginx解决跨域问题

    问题 前端 80端口 后的 8080端口 外网映射端口 9081 对应8080 9082对应80 前端会掉用后端的api 8080 das admin 端口不同 产生跨域问题 1 临时解决思路 谷歌浏览器设置 C Users dns00 A
  • 分布式理论(二)——Base 理论

    BASE 理论 BASE 是 Basically Available xff08 基本可用 xff09 Soft state xff08 软状态 xff09 和 Eventually consistent xff08 最终一致性 xff09
  • nodejs和vuejs的关系

    nodejs类比Java中 xff1a JVM 详述 xff1a 就前端来说nodejs具有划时代的意义 xff0c 做前端的没用过nodejs都不好意思说自己是前端 xff0c 做后端的没听过nodejs xff0c 或者说不出nodej
  • sonic-ios-bridge(sib)性能监控之系统性能及应用性能

    sib下载地址 xff1a Releases SonicCloudOrg sonic ios bridge GitHub 可以看到最新版本为V1 3 7 下载到本地并解压后即可使用 性能监控使用帮助 xff1a sib perfmon h
  • tomcat lombok 报 Invalid byte tag in constant pool: 19

    提供给其他系统使用的jar包造成tomcat启动报错 xff1a Unable to process Jar entry module info class from Jar jar file xxxxxxxx lombok 1 18 4
  • Tomcat的性能与最大并发配置

    当一个进程有 500 个线程在跑的话 xff0c 那性能已经是很低很低了 Tomcat 默认配置的最大请求数是 150 xff0c 也就是说同时支持 150 个并发 xff0c 当然了 xff0c 也可以将其改大 当某个应用拥有 250 个
  • Redis 单机模式,主从模式,哨兵模式(sentinel),集群模式(cluster)优缺点分析

    Redis 单机模式 xff0c 主从模式 xff0c 哨兵模式 sentinel xff0c 集群模式 cluster xff0c 第三方模式优缺点分析 Redis 的几种常见使用方式包括 xff1a 单机模式主从模式哨兵模式 senti
  • tomcat开机自启动

    有两种方式可以实现 xff0c 一种是自启动脚本 一种是将tomcat注册为服务 xff0c 设置服务自启动 一 自启动脚本 1 添加tomcat启动脚本到开机自启动项目中 vim etc rc d rc local 增加以下内容 xff1
  • jeecgboot @Transactional捕获异常并拿到返回值

    64 Transactional 和 64 RestControllerAdvice 并不冲突 回滚的同时拦截异常返回需要的值给前端 64 Override 64 Transactional rollbackFor 61 Exception
  • @AliasFor 注解使用规则

    64 AliasFor 顾名思义 xff0c 表示别名 1 它可以注解到自定义注解的两个属性上 xff0c 表示这两个互为别名 2 注解是可以继承的 xff0c 但是不能用来继承父注解的某个属性值 xff0c 可以通过在子注解对于的属性上加
  • Docker Desktop修改默认安装路径?

    原理 xff1a 建立一个目录的软链接 用管理员身份打开cmd窗口 xff0c 然后运行命令 xff1a mklink j 34 C Program Files Docker 34 34 D Program Files Docker 34
  • java web项目打包成exe安装程序

    需求 xff1a 由于java web项目 xff0c 需要依赖mysql数据库 tomcat容器 jdk等 xff0c 部署需要一定技术支持才能够完成 xff0c 操作繁琐 xff0c 希望简化 目标 xff1a 制作一个exe一键安装相
  • http 请求参数包含? & 处理

    escape encodeURI encodeURIComponent 区别详解 JavaScript中有三个可以对字符串编码的函数 xff0c 分别是 xff1a escape encodeURI encodeURIComponent x
  • 多个项目共用一个redis

    redis 数据库是由一个整数索引标识 xff0c 而不是由一个数据库名称 默认情况下连接到数据库0 因此多个项目如果配置不做修改都会使用0号数据库 xff0c 会发生冲突 所以 每个项目配置不同的 database 即可解决
  • LoadRunner中参数化技术详解

    LoadRunner中参数化技术详解 LoadRunner在录制脚本的时候 xff0c 只是忠实的记录了所有从客户端发送到服务器的数据 xff0c 而在进行性能测试的时候 xff0c 为了更接近真实的模拟现实应用 xff0c 对于某些信息需