当前位置: 首页 > news >正文

Jmeter常用功能-参数化介绍

JMeter也有像LR中的参数化,本篇就来介绍下JMeter的参数化如何去实现。

参数化:录制脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统。

这个时候就需要对用户名和密码进行参数化,使每个虚拟用户都使用不同的用户名和密码进行访问。

一、准备脚本,测试数据

1、录制一个脚本(可以用badboy工具录制),在jmeter中打开,找到有用户名和密码的页面。如下在这里插入图片描述

2、我们需要“参数化”的数据,用记事本写了五个用户名和密码,保存为.dat格式的文件,编码问题在使用CSV Data Set Config参数化时要求的比较严格,记事本另存为修改编码UTF-8. 注意用户名和密码是一一对应的,中间用户逗号(,)隔开。
在这里插入图片描述

我将这个文件放在了我的( C:\JmeterWorkSpace\t.dat )路径下。

二、参数化

这里介绍两种参数化的方式:函数助手,CSV Data Set Config。

1、借助函数助手的方式

a、点击菜单栏“选项”---->函数助手对话框,看下图: CSV文件列号是从0开始的,第一列0、第二列1、第三列2、依次类推。。在这里插入图片描述

b、复制生成的参数化函数,打开登陆请求页面,在右则的参数化中找到我们要参数化的字段,这里对用户名和密码做参数化,第一列是用户名,列号为0;第二列是密码,列号为1;修改函数中对应的参数化字段列号就可以啦。
在这里插入图片描述

好了,现在我们的参数化设置完成,在脚本的时候,会调用我们C:\JmeterWorkSpace盘下面的t.dat文件,第一列是用户,第二列是密码。

2、借助jmeter中的配置元件(CSV Data Set Config)

a、选中线程组,点击右键,添加-配置元件-CSV Data Set Config
在这里插入图片描述

说明:

Filename — 参数项文件

File Encoding — 文件的编码,设置为UTF-8

Vaiable Names — 文件中各列所表示的参数项;各参数项之间利用逗号分隔;参数项的名称应该与HTTP Request中的参数项一致。

Delimiter — 如文件中使用的是逗号分隔,则填写逗号;如使用的是TAB,则填写\t;(如果此文本文件为CSV格式的,默认用英文逗号分隔)

Recycle on EOF? — True=当读取文件到结尾时,再重头读取文

False=当读取文件到结尾时,停止读取文件

Stop thread on EOF? — 当Recycle on EOF为False时,当读取文件到结尾时,停止进程,当Recycle on EOF为True时,此项无意义

备注说明:这里我用通俗的语言大概讲一下Recycle on EOF与Stop thread on EOF结果的关联

Recycle on EOF :到了文件尾处,是否循环读取参数,选项:true和false

Stop thread on EOF:到了文件尾处,是否停止线程,选项:true和false

当Recycle on EOF 选择true时,Stop thread on EOF选择true和false无任何意义,通俗的讲,在前面控制了不停的循环读取,后面再来让stop或run没有任何意义

当Recycle on EOF 选择flase时,Stop thread on EOF选择true,线程4个,参数3个,那么只会请求3次

当Recycle on EOF 选择flase时,Stop thread on EOF选择flase,线程4个,参数3个,那么会请求4次,但第4次没有参数可取,不让循环,所以第4次请求错误 

http://www.lryc.cn/news/128829.html

相关文章:

  • “深入探索JVM内部机制:解密Java虚拟机的工作原理“
  • C++超基础语法
  • 位运算相关题目:下一个数、整数转换、配对交换
  • 【数据结构】链表常见题目
  • 多家企业加入即将在2024年发射的量子卫星SpeQtral-1任务
  • shell脚本基础
  • 创建maven的Springboot项目出现错误:Cannot access alimaven
  • 神经网络基础-神经网络补充概念-32-神经网络与大脑
  • linux自动填充密码及提示信息
  • IC设计中主要的EDA工具有哪些? (内附EDA虚拟机安装资源)
  • Zabbix配置通用的TCP/IP:port监控项
  • 【RocketMQ】SpringBoot集成RocketMQ
  • 思腾云计算
  • 前端面试:【HTML】语义化标签、表单、媒体元素
  • 2024浙大MBA/MEM/MPA四个月冲刺备考策略
  • Element通过v-for循环渲染的form表单校验
  • 精彩回顾 | 迪捷软件出席2023ATC汽车电子与软件技术周
  • 树莓派的自启动与桌面应用程序
  • RabbitMQ面试题
  • Kubernetes二进制部署方案
  • Android 13 开启关闭飞行模式
  • C++学习笔记总结练习:EffectiveSTL
  • SQL Developer中的Data Redaction
  • 深入解析Ed25519椭圆曲线数字签名算法的C#移植及应用示例
  • XQuery创建BaseX数据库实例
  • MySQL索引(Index)
  • web框架面试题
  • 什么是字体堆栈(font stack)?如何设置字体堆栈?
  • 推特群推王:引爆您的产品
  • [JavaWeb]【七】web后端开发-MYSQL