参数化

调用变量的用法: ${变量名}

参数化第一 二种、

定义变量的两种方法

配置元件(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 - 参数化 、函数的更多相关文章

  1. jmeter笔记(6)--参数化--函数助手

    函数助手提供的功能很多,本次笔记主要整理_CSVRead 函数._Random函数以及_RandomString函数的基础使用方法 1._CSVRead 作用:直接读取csv文件的值生成函数 1.在[ ...

  2. Jmeter笔记2:参数化(五种方法)

    案例:邮箱登录操作,参数化登录的用户名 方法一.依赖Jmeter自带的函数助手 选项-->函数助手对话框,即可打开函数助手弹窗 (1)比如使用函数_Random 输入最小值.最大值,点击下方的[ ...

  3. Jmeter使用之常用函数介绍

    “_csvRead”函数 CsvRead函数是从外部读取参数,CsvRead函数可以从一个文件中读取多个参数. 下面具体讲一下如何使用csvread函数: 1.     新建一个csv或者text文件 ...

  4. Jmeter中各种参数化设置的方法

    Jmeter中有较多需要参数化测试的地方: 1.从一个用户登录的接口获取登录后的token值,取值后用于后续接口调用 2.获取用户浏览后的cookies信息,需要用到HTTP Cookie 管理器来为 ...

  5. 【转】Jmeter使用之常用函数介绍

    "_csvRead"函数 csvRead函数是从外部读取参数,csvRead函数可以从一个文件中读取多个参数. 下面具体讲一下如何使用csvread函数: 1.新建一个csv或者t ...

  6. Jmeter中的参数化常用的几种方式

    Jmeter中的参数化常用的几种方式,这里讲一下前两个方式,最后一个在csv参数化里已详细讲解. 1.用户参数 2.函数助手 3.CSV Data Set Config  一.用户参数 位置:添加-前 ...

  7. Jmeter 5.1参数化csv引入文件

    Jmeter 5.1参数化csv引入文件 1.引用外部参数文件.新建json.txt文本输入需要的数据,我写了两条数据. 2.添加CSV数据文件设置,输入文件名.变量名.是否读取首行 报文中引用参数, ...

  8. 『动善时』JMeter基础 — 22、JMeter中实现参数化(CSV)

    目录 1.参数化的定义 2.什么情况下需要用到参数化 3.JMeter实现参数化的方式 4.CSV数据文件设置界面详细说明 (1)CSV数据文件设置组件界面说明 (2)补充说明:Recycle on ...

  9. JMeter四种参数化方式

    JMeter参数化是指把固定的数据动态化,这样更贴合实际的模拟用户请求,比如模拟多个不同账号.JMeter一共有四种参数化方式,分别是: CSV Data Set Config Function He ...

  10. IOS学习笔记07---C语言函数-printf函数

    IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...

随机推荐

  1. 通读《构建之法》与CI/CD工具尝试

    项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任健) 这个作业的要求在哪里 作业要求 我在这个课程的目标是 积累软件开发经验,提高工程能力 这个作业在哪个具体方面帮助我实现目标 通读课 ...

  2. 021- Java语言基础-基本数据类型的一些问题和总结

    我们输入以下代码: public class DataType07 { public static void main(String[]args){ byte b1 = 4; byte b2 = 5; ...

  3. Thinkphp5之laypage分页插件的实现

    //一下是laypage所用到的 js <script type="text/javascript" src="__STATIC__/lib/laypage/1.2 ...

  4. IDAPython类库---idautils.py的源码

    #--------------------------------------------------------------------- # IDAPython - Python plugin f ...

  5. POJ1328贪心放雷达

    题意:        有一个二维坐标,y>0是海,y<=0是陆地,然后只能在y=0的岸边上放雷达,有n个城市需要被监控,问最少放多少个雷达. 思路:       贪心去做就行了,其实题目不 ...

  6. CVE-2011-0104:Microsoft Office Excel 中的栈溢出漏洞调试分析

    0x01 前言 CVE-2011-0104 是 Microsoft Office 中的 Excel(没有打补丁的情况下)表格程序在处理 TOOLBARDEF 中的 Record 字节时没有对 Len ...

  7. CVE-2012-1876:Internet Exporter MSHTML.DLL CaculateMinMax 堆溢出简单分析

    0x01 2012 Pwn2Own 黑客大赛 Pwn2Own 是世界上最著名的黑客大赛,意在激励白帽黑客们进行顶尖的安全研究.在 2012 年 Pwn2Own 大赛上,来自法国著名的安全团队 Vupe ...

  8. Windows PE第6章 栈与重定位表

    第六章 栈与重定位表 本章主要介绍栈和代码重定位.站和重定位表两者并没有必然的联系,但都和代码有关.栈描述的是代码运行过程中,操作系统为调度程序之间相互调用关系,或临时存放操作数而设置的一种数据结构. ...

  9. Java并发容器篇

    作者:汤圆 个人博客:javalover.cc 前言 断断续续一个多月,也写了十几篇原创文章,感觉真的很不一样: 不能说技术有很大的进步,但是想法确实跟以前有所不同: 还没开始的时候,想着要学的东西太 ...

  10. 『政善治』Postman工具 — 10、Postman中对Cookie的操作

    目录 1.往常的Cookie处理方式 2.Postman中的Cookie管理机制 3.自定义Cookie管理内容 在接口测试中,某些接口的调用,需要带入已有Cookie,比如有些接口需要登陆后才能访问 ...