首页 > 其他分享 >JMeter入门教程(9) --参数化

JMeter入门教程(9) --参数化

时间:2023-04-21 14:32:42浏览次数:42  
标签:文件 CSV 数据文件 -- 入门教程 线程 参数 JMeter



文章目录

  • 1.任务背景
  • 2.任务目标
  • 3.任务实操
  • 3.1 CSV数据文件


1.任务背景

参数化是测试过程中很常用的一种技巧,可以将脚本中的某些输入用参数来代替,比如登陆时传递参数,在脚本运行时指定参数的取值范围和规则

2.任务目标

掌握基于JMeter性能测试脚本开发——参数化

3.任务实操

我们介绍CSV数据文件

3.1 CSV数据文件

1.首先选中树

点,右键,选择添加 > 配置元件 > CSV数据文件设置

控制面板中各元素介绍:

名称:可以随意设置,最好有业务意义。

注释:可以随意设置,可以为空。

设置CSV数据文件:

文件名:引用文件地址,可以是相对路径也可以是绝对路径。相对路径的根节点是JMeter的启动目录(%JMETER_HOME%\bin)。对于分布式测试,CSV文件必须存储在服务器主机系统上与JMeter服务器启动位置相对的正确目录中。 也支持绝对文件名,但请注意,除非远程服务器具有相同的目录结构,否则它们不太可能在远程模式下工作。如果以两种不同的方式引用相同的物理文件,例如“csvdata.txt”和“./csvdata.txt”将被视为不同的文件,如果操作系统不区分大小写,csvData.TXT仍将被视为不同的文件。

文件编码:读取参数文件用到的编码格式,建议用UTF-8的格式保存参数文件,省去遇见乱码的情况。

变量名称(西文逗号间隔):定义的参数名称,用逗号隔开,将会与参数文件中的参数对应,如果这里的参数个数比参数文件中的参数列多,多余的参数将取不到值;反之参数文件中部分列将没有参数对应。

忽略首行(只在设置了变量名称后才生效):忽略CSV文件的第一行,仅当变量名称不为空时才使用它,如果变量名称为空,则第一行必须包含标题。

分隔符(用‘\t’代替制表符):用来分隔参数文件的分隔符,默认为逗号,也可以用tab来分隔,如果参数文件用tab分隔,在此应该填写“\t”。

是否允许带引号:是非选项,如果选择是,那么可以允许拆分完成的参数里面有分隔符出现。

遇到文件结束符再次循环:是非选项,是,参数文件循环遍历;否,参数文件遍历完成后不循环(JMeter在测试执行过程中每次迭代会从参数文件中新取一行数据,从头遍历到尾)。

遇到文件结束符停止线程:与“遇到文件结束符再次循环”选项中的False选择复用:是,停止测试;否,不停止测试。

设置CSV数据文件:

线程共享模式:参数文件共享模式,有以下三种:

所有线程:参数文件对所有线程共享,这就包括同一测试计划中的不同线程组。

当前线程组:只对当前线程组中的线程共享。

当前线程:仅当前线程获取。

如图:

JMeter入门教程(9) --参数化_jmeter

2.在测试元件中引用某个变量,可以通过使用“${”和“}”将变量名括起来实现。


标签:文件,CSV,数据文件,--,入门教程,线程,参数,JMeter
From: https://blog.51cto.com/u_15630062/6212761

相关文章

  • loadrunner入门教程(20) --场景创建
    文章目录1.任务背景2.任务目标3.任务实操3.1人工场景3.2面向目标场景4.任务总结1.任务背景Controller是loadrunner的场景工具,用于创建和控制loadrunner场景。由一个场景负责定义每个测试会话中发生的事件。他控制要模拟的用户数、这些用户执行的操作以及用于运行模拟场景的计算......
  • loadrunner入门教程(17) --关联
    文章目录1.任务背景2.任务目标3.任务实操1.任务背景当执行脚本时,VuGen伪装成浏览器,然后根据脚本,把当初真的浏览器所发过的内容,再对网站服务器重新发送一遍,VuGen企图骗过服务器,让服务器以为它就是当初的浏览器,然后把网站内容传送给VuGen。所以记录在脚本中要对服务器所发送的内......
  • loadrunner入门教程(24) --Load Generator
    文章目录1.任务背景2.任务目标3.任务实操1.任务背景对场景进行设计后,接着需要对负载生成器进行管理和设置。LoadGenerator是运行脚本的负载引擎,在默认情况下使用本地的负载生成器来运行脚本,但是模拟用户行为也需要消耗一定的系统资源,所以在一台电脑上无法模拟大量的虚拟用户,这个......
  • 帝国CMS 实现ctrl+v粘贴图片并上传、word粘贴带图片
    ​ 在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper。通过知乎提供的思路找到粘贴的原理,通过TheViper找到粘贴图片的方法。其原理为一下步骤:监听粘贴事件;【用于插入图片】获取光标位置;【......
  • 多卡训练yolo系列模型
    直接在后台服务器运行输入命令nohuppython train.py >out.log2>&1&注意,一定要用“nohup<运行程序>>out.log2>&1&”,让程序在后台运行。原因是,从下载巨大的数据集,到训练YoloV5模型,前后要运行十几个小时。在这段时间里,你的笔记本电脑与MistGPU的网络连接,很可能......
  • iOS:常用的谓词
    funccompare(_predicateString:String,num:Any)->Bool{letpredicate=NSPredicate(format:predicateString)returnpredicate.evaluate(with:num)}///比较运算///`>`:判定大于///`<`:判定小于///`=`:判定等于///`!=`或`<>`:判定不等于//......
  • 牛顿迭代法求方程根(递归算法)
    #include<iostream>#include<cmath>usingnamespacestd;doublef_origianal(doublea,doubleb,doublec,doubled,doublenewx){ returna*pow(newx,3)+pow(newx,2)*b+c*newx+d;}doublef_after_or(doublea,doubleb,doublec,doubled,......
  • k8s将pod指定到某个节点
    1、查看节点标签kubectlgetnodes--show-labels2、给节点打标签kubectllabelnode10.64.39.219node=bmdkubectllabelnode10.64.39.186node=bmd3、指定程序的运行pod[root@apiserverk8s]#catselec.ymlapiVersion:extensions/v1beta1kind:Deployment......
  • FSA的学习
    FSA有限状态机的形式是接受某个输入,然后转变成下一个状态,或者保持当前状态。以HELLO为例子:目前状态接受下一个状态1h22e33l44l55o66开始是状态1,接受到h后,转变到状态2,接受到e后进入状态3,以此类推。。。当然如果输入是heeee,那么在状态......
  • Vue3 代码块高亮显示并可使用富文本编辑器编辑(highlight.js + wangEditor)
    在Vue项目中实现以下功能:  功能1.在页面中显示代码,并将其中的关键字高亮显示。  功能2.允许对代码块进行编辑,编辑时代码关键字也高亮显示。  功能3.可在编辑器中添加多个代码块,动态渲染代码关键字高亮。 Step1:安装所需插件(本文使用npm安装,若需使用其他方式请查......