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

Jmeter常用函数、逻辑控制器

目录

一、Jmeter常用函数

counter函数

machineName函数

machineIP函数

Random函数

RandomString函数

RandomDate函数

time函数

二、逻辑控制器

IF控制器

循环控制器

foreach控制器

仅一次控制器

事务控制器

聚合报告

随机控制器

随机顺序控制器


一、Jmeter常用函数

1、${__setProperty()}作用是用来设置属性值

2、${__property()}用来取对应属性值

3、${__counter(false,)}计数器用来产生一个连续的正整数数据

4、${__machineName()}获取本机电脑的名称

5、${__machineIP()}用来获取本机电脑的ip地址

6、${__Random(1000,9999,)}生成随机数

7、${__RandomDate(yyyy-MM-dd,2024-09-01,2024-09-26,,)}

8、${__time(yyyy年MM月dd日 HH:mm:ss SSS,)}获取本地时间并格式化 yyyy代表年 MM代表月 dd代表天数 HH 代表小时 mm 代表分钟 ss 代表秒数 SSS 代表毫秒数

9、${__RandomString(5,afsadfasdfdsafadf,)} 获取一个随机字符串

 setProperty和property在上篇文章中跨线程中说明过了,这里不在赘述,有需要的参看我上一篇文章

https://blog.csdn.net/Betray391/article/details/142552972?fromshare=blogdetail&sharetype=blogdetail&sharerId=142552972&sharerefer=PC&sharesource=Betray391&sharefrom=from_link

counter函数

计数器用来产生一个连续的正整数数据,跟配置元件里面的计数器作用类似

machineName函数

获取本机电脑的名称

这里成功获取到了电脑名称

machineIP函数

用来获取本机电脑的ip地址

Random函数

生成随机数

比如我们想要在做注册测试的时候,需要保证注册的手机号什么的不一样,就可以用随机数来生成一些手机号保证每次执行都不会出现用户名已存在的问题

这里是生成随机4位数字 

RandomString函数

也是随机生成的函数,不过是随机成成文字的,可以是英文也可以是中文,注册时候生成随机名字

如果想输入中文的话也是直接输入就行

然后添加到请求中即可使用,中文名字一般是都两个或者三个字的,这样我们可以进行组合,

这样就能随机组合出一个名字了

RandomDate函数

获得随机日期

我们只要给一个开始时间一个结束时间就能在这两个时间种间随机生成一个时间来用

time函数

获取本地时间并格式化 yyyy代表年 MM代表月 dd代表天数 HH 代表小时 mm 代表分钟 ss 代表秒数 SSS 代表毫秒数

直接获取到了当前的时间

二、逻辑控制器

控制取样器的执行步骤

IF控制器

当msg返回的信息中是“登录成功”就继续执行否不通过

这里有两种写法,跟下面的复选框有关系

第一种

当我们不选择下方时,他就会有一个警告,可以忽略这个警告,最后执行的效果是一样的

第二种

当我们选择了这个以后,就不会有这个警告了,但是我们的写法就得变,就需要用jex13函数来写这个条件,用哪一种都可以

循环控制器

用来控制取样器的执行次数

我们看结果,可以看到是循环执行了五次

 

foreach控制器

对于提取出来的多个值循环使用

这里我们直接循环使用name2的内容,看看效果

仅一次控制器

放入控制中的取样器最多执行一次

这里我们先把线程数设为3个人

然后运行查看结果是否只执行了一次,能够看到登录只执行了一次

事务控制器

把多个接口当成一个事务来处理,意思就是比如把登录,添加购物车,付款这一整个事务当做一个一个来执行

这里有一个新的监听器,叫做 “聚合报告” ,我们用它来查看事务

能看到这个报告中把多个请求看做了一个操作

聚合报告

这里解释一下聚合报告中的内容

当我们进行测试的时候,如果我们需要求平均值,这个时候就可以使用聚合报告

lable:标签 用来显示取样器名称或者时逻辑控制器名称

样本:执行的测试次数

平均值:平均响应时间

中位数、90%、95%、99%指的时请求在某个时间点之下完成的。

最小值:就是请求最快,消耗的时间

最大值:请求最慢消耗的时间

异常%:错误的个数/请求的总数的百分比(行业标准是万分之5)

吞吐量:对于这样的请求每秒完成的数量

接收:服务返回的数据大小

发送:客户端提交数据大小

将来我们做性能测试:响应时间最小值和最大值之间如果波动比较大,那么这个时候就不要使用平局响应时间了,要用90%的时间

随机控制器

随机从多个接口中随机取出一个接口执行

这里是在多个请求中随机挑出一个执行了

随机顺序控制器

随机顺序是运行多个接口时,每次运行顺序不一样

可以看到完全是随机执行的

常用的函数和控制器也差不多说完了


http://www.kler.cn/news/327462.html

相关文章:

  • 025.Oracle_DBMS_job定时任务
  • 单片机在控制和自动化任务中的应用场景广泛
  • 关于区块链的安全和隐私
  • 国外问卷调查匠哥已经不带人了,但是还可以交流
  • Windows平台如何实现RTSP|RTMP流录像?
  • STM32F1+HAL库+FreeTOTS学习14——数值信号量
  • 如何创建一个包含多个列的表?
  • PHP的guzzlehttp/guzzle库在碰到各种异常时的场景
  • 前端框架对比和选择:Vue、React 和 Angular 谁更适合你的项目?
  • Java 死锁及避免讲解和案例示范
  • 初识Linux · O(1)调度算法
  • 新品 | Teledyne FLIR IIS 推出Forge 1GigE SWIR 短波红外工业相机系列
  • 【d57】【sql】1661. 每台机器的进程平均运行时间
  • 【AI学习笔记】基于Unity+DeepSeek开发的一些BUG记录解决方案
  • 【YashanDB知识库】YashanDB-OCI-快速上手
  • 仿真设计|基于51单片机的路口交通灯控制系统仿真
  • sudo 命令:掌握系统权限控制,实现安全高效管理
  • C++----类和对象(一)
  • SpringBoot集成-RocketMQ快速入门
  • 使用 SSH 连接 Docker 服务器:IntelliJ IDEA 高效配置与操作指南
  • Day48_SpringSecurity
  • 上海市计算机学会竞赛平台2024年9月月赛丙组材料组合
  • sql 时间交集
  • C# 变量与常量
  • Unity3D Shader的阴影部分法线效果详解
  • Android Studio | 无法识别Icons.Default.Spa中的Spa
  • 软件设计师——计算机网络
  • 【有啥问啥】卡尔曼滤波(Kalman Filter):从噪声中提取信号的利器
  • 【鸿蒙】HarmonyOS NEXT应用开发快速入门教程之布局篇(上)
  • PCL GridMinimum获取栅格最低点