美文网首页
JMeter(3): 定义变量

JMeter(3): 定义变量

作者: halfempty | 来源:发表于2019-04-28 11:38 被阅读0次

1. 前言

在使用JMeter的过程中, 常用的定义变量入口有User Defined Variables(UDV)CSV Data Set Config
UDV比较好理解, 毕竟没有选项
CSV Data Set Config就麻烦一点, 配置就跟完型填空一样

2. 结论

  • UDV变量所有线程共享, 同名变量取第一个, 且可读取jmeter.propterties参数
  • CSV
    • Ignore first line, 即是否忽略表头, 如果为true, 过滤第一行
    • Allow quoted data, 默认为False, 即"做为字符串的一部分; 默认为True, 将"内的字符串作为一个整体, 即使其中包含分隔符
    • Recycle on EOF, 默认True, 当线程数大于数据行数, 线程会从头继续读取; 如果为False, 则变量填充EOF
    • Stop thread on EOF只在 Recycle on EOF 为False时有效, 如果为True, 则变量填充为EOF时不执行线程
    • edit参数用于自定义表达式, 返回true or false
    • Sharing mode, 默认为All threads, 表示所有线程共同读取一个CSV文件; Current thread表示线程独享CSV文件

3. 实验

为了搞清楚参数的含义, 新建Jmeter工程试验一下

  • 添加线程组, 定义线程数为3
  • 添加被测组件UDV
  • 添加被测组件CSV Data Set Config
  • Debug SamplerView Results Tree用于观察变量
image.png

3.1 UDV 配置

image.png

3.2 CSV配置

数据文件内容:

1   "Java   12"
2   Python
image.png

3.3 场景

  • 默认配置
Allow quoted data = False
Recycle on EOF = True
Stop thread on EOF = False
info.gif
  • 修改Allow quoted data为True
Allow quoted data = True
Recycle on EOF = True
Stop thread on EOF = False
info.gif
  • 修改Recycle on EOF为False
Allow quoted data = True
Recycle on EOF = False
Stop thread on EOF = False
info.gif
  • 修改Stop thread on EOF为edit
    填充表达式${__BeanShell(vars.get("u_var").equals("come from UDV"))}
    image.png

剩下的场景请自行实验

  • 线程数 > CSV行数, Recycle on EOF + Stop Thread on EOF组合
  • 线程数 <= CSV行数, Recycle on EOF + Stop Thread on EOF组合
  • Sharing mode参数

相关文章

网友评论

      本文标题:JMeter(3): 定义变量

      本文链接:https://www.haomeiwen.com/subject/wzurnqtx.html