Jmeter- 笔记4 - 参数化 、函数
参数化
调用变量的用法: ${变量名}

参数化第一 二种、
定义变量的两种方法:
配置元件(Config Element) -> 用户定义的变量(User Defined Variables)
前置处理器(Pre Processors) -> 用户参数(User Parameters)
用户定义的变量

用户参数

两者的共同点:都可以用于定义变量
两者的区别:
用户定义的变量:
(1)在jmeter启动时,获取一次值,在运行过程中,不再获取值(举例:1个用户循环n次,每次取的变量值都一样;n个用户循环1次,每个用户取的变量值都一样)。
(2)用户定义的变量,是全局变量
用户参数:
(1)在jmeter启动时,获取一次值,在运行过程中,还会动态获取值(举例:1个用户循环n次,每次取的变量值都不一样;n个用户循环1次,每个用户取的变量值都不一样)。
(2)用户参数,是局部变量
测试计划 -> 用户定义的变量 和 配置元件 -> 用户定义的变量 是一样作用:全局变量,可跨线程组

参数化第三种、
路径:配置元件 -> CSV数据文件设置
配置元件的特点:优先级最高

1.文件名:可以csv,txt,excel,优先使用txt,原因1.因为csv消耗资源更多,原因2.csv本身不是uft-8编码,中文会产生乱码。注意使用相对路径 “./***.txt" 跟脚本同级目录
2.文件编码:按业务选择
3.变量名称:根据文件内容列来定义变量名称,多个变量用逗号隔开,按列顺序定义变量名
4.忽略首行:False是不忽略,有些文件首行是列名而不是数据,则可以改为True忽略
5.分隔符:文件里列与列之间的分隔符
6.是否允许带引号:当数据内容有带引号时,此处需选择True
7.遇到文件结束符再次循环:举例此时选择True,文件有3个数据,线程循环5次,运行脚本时3个数据跑完一次,还会从头开始再跑到第二个数据,即循环5次都有数据。反之选False时,只有3个数据,循环3次后,已经没有数据再循环了,因此后面两次循环取值为空。
8.遇到文件结束符停止线程:文件的数据被跑完时,即使有线程还没运行,都停止运行。
注意:遇到文件结束符再次循环 和 遇到文件结束符停止线程不能同时为True,因为无意义
9.线程共享模式:
****************************************************************************************************************************************************************************************
涉及到造数据的函数使用方法:
路径:Tools -> 函数助手对话框
注意点:
1.严格区分大小写
2,函数 ${__函数名称(,)}
不会使用函数的,可点击函数旁边的【帮助】按钮,查找函数用法
函数
1.随机数字函数: Random()
${__Random(最小值,最大值,)}
如图,用随机函数生成0~999之间的随机数字

在参数中使用固定值和随机数拼接时,如下图,固定131+随机生成8位数字

2. 随机字符串 RandomString()
${__RandomString(字符串长度,组成字符串的字符,)}

3.随机长度的随机字符串 Random() + RandomString()
${__RandomString(${__Random(最小值,最大值,)},字符,)}

4. 统计函数${__counter(,)}
5.加密函数 digest()
${__digest(md5,要加密的字符,,,)}
该函数只能做很简单的加密算法,只支持以下几种算法
- MD2
- MD5
- SHA-1
- SHA-224
- SHA-256
- SHA-384
- SHA-512

6.获取jmeter属性的函数
${__P(属性名称,)}
${__property(属性名称,,)}
这两种函数效果一样,P只是缩写
7.设置jmeter属性的函数
${__setProperty(属性名称,新属性值,)}
注意点:用这个函数设置的属性值,仅当前启动的jmeter有效
额外话题:属性有jmeter属性,也有系统属性,在非测试元件 -> 属性显示,可以查看系统属性和jmeter属性,${__setProperty(,,)}这个函数只能临时改变jmeter属性,不能改变系统属性

8.获取当前时间 time()
${__time(,)} 当前时间戳
${__time(YMD,)} 20201214 yyyyMMdd
${__time(HMS,)} 222513 HHmmss
${__time(YMDHMS,)} 20201214-222641 yyyyMMdd-HHmmss
除上述例子,可自定义显示格式
9.拼接函数 V()
${__V(,)}
嵌套变量引用不起作用时,用V()函数转换一下。
截自【帮助】解说

10.查看当前请求属于第几个线程 ${__threadNum}
把该函数放在请求名称旁边,如下图,一共有五个线程,一个线程循环1次。

Jmeter- 笔记4 - 参数化 、函数的更多相关文章
- jmeter笔记(6)--参数化--函数助手
函数助手提供的功能很多,本次笔记主要整理_CSVRead 函数._Random函数以及_RandomString函数的基础使用方法 1._CSVRead 作用:直接读取csv文件的值生成函数 1.在[ ...
- Jmeter笔记2:参数化(五种方法)
案例:邮箱登录操作,参数化登录的用户名 方法一.依赖Jmeter自带的函数助手 选项-->函数助手对话框,即可打开函数助手弹窗 (1)比如使用函数_Random 输入最小值.最大值,点击下方的[ ...
- Jmeter使用之常用函数介绍
“_csvRead”函数 CsvRead函数是从外部读取参数,CsvRead函数可以从一个文件中读取多个参数. 下面具体讲一下如何使用csvread函数: 1. 新建一个csv或者text文件 ...
- Jmeter中各种参数化设置的方法
Jmeter中有较多需要参数化测试的地方: 1.从一个用户登录的接口获取登录后的token值,取值后用于后续接口调用 2.获取用户浏览后的cookies信息,需要用到HTTP Cookie 管理器来为 ...
- 【转】Jmeter使用之常用函数介绍
"_csvRead"函数 csvRead函数是从外部读取参数,csvRead函数可以从一个文件中读取多个参数. 下面具体讲一下如何使用csvread函数: 1.新建一个csv或者t ...
- Jmeter中的参数化常用的几种方式
Jmeter中的参数化常用的几种方式,这里讲一下前两个方式,最后一个在csv参数化里已详细讲解. 1.用户参数 2.函数助手 3.CSV Data Set Config 一.用户参数 位置:添加-前 ...
- Jmeter 5.1参数化csv引入文件
Jmeter 5.1参数化csv引入文件 1.引用外部参数文件.新建json.txt文本输入需要的数据,我写了两条数据. 2.添加CSV数据文件设置,输入文件名.变量名.是否读取首行 报文中引用参数, ...
- 『动善时』JMeter基础 — 22、JMeter中实现参数化(CSV)
目录 1.参数化的定义 2.什么情况下需要用到参数化 3.JMeter实现参数化的方式 4.CSV数据文件设置界面详细说明 (1)CSV数据文件设置组件界面说明 (2)补充说明:Recycle on ...
- JMeter四种参数化方式
JMeter参数化是指把固定的数据动态化,这样更贴合实际的模拟用户请求,比如模拟多个不同账号.JMeter一共有四种参数化方式,分别是: CSV Data Set Config Function He ...
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
随机推荐
- Typora 主题推荐
Typora 修改代码块高亮样式可以参考:点击这里 下面推荐按几款比较好看的主题样式 1.cobalt主题 2.Drake主题 3.fluent主题 4.gitbook主题 5.techo主题 6.U ...
- 从苏宁电器到卡巴斯基第31篇:难忘的三年硕士时光 IX
在校的最后一个月 毕业答辩的评审老师宣布我没能通过,让我瞬间不知道该怎么好了.已经到了中午,老师们也都是准备吃盒饭去了,我和其他已经通过了的同学随便收拾了一下教室,然后无助的我赶紧去找旁听的教学秘书, ...
- 基于Frida框架打造Art模式下的脱壳工具(OpenMemory)的原理分析
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80956614 作者dstmath在看雪论坛公布一个Android的art模式下基 ...
- js限制上传文件类型和大小
<html> <head> <script type="text/javascript"> function fileChange(target ...
- Insert Pictures In Hexo Blog
After build my blog following the online course step by step , I began to try to write my own blog️ ...
- 浅谈持续集成(CI)、持续交付(CD)、持续部署(CD)
CI/CD是实现敏捷和Devops理念的一种方法,具体而言,CI/CD 可让持续自动化和持续监控贯穿于应用的 整个生命周期(从集成和测试阶段,到交付和部署).这些关联的事务通常被统称为"CI ...
- jenkins 下使用ansible 跨服务器控制操作
例如: A服务器地址:172.16.1.203 B服务器地址:172.16.1.204 当jenkins 在A 服务器并且用户aa, 控制B 服务器的用户bb的操作 (1)B服务器 用ssh-key ...
- 基于 registry 搭建 Docker 私有镜像仓库
今天主要介绍使用 registry 来搭建 Docker私有镜像仓库,方便在公司内部项目中使用,registry 也是 Docker 官方提供的一个镜像,操作也很简单. dockerhub: http ...
- C# 通过DataSet 获取SQL 存储过程返回的多个结果集(tables)
测试数据:Northwind 链接地址: https://files.cnblogs.com/files/louiszh/NorthWind.zip 首先创建一个测试存储过程: IF EXISTS ( ...
- GDI编程基础
窗口和视口 视口是基于设备的采用的是设备坐标(单位:像素),窗口是基于程序的采用的是逻辑坐标(单位:像素/毫米/厘米等). 在默认的映射模式下,视口是与窗口等同的.但是如果改变其映射模式,则其对应的单 ...