jmeter在beanshell中使用props.put()方法的注意事项
在jmeter中,通常使用beanshell去处理一些属性的设置和获取的操作,而这些操作也是有一定的规则的。
1. 设置属性时,在属性名上要加双引号,这代表它不是一个需要用var去声明的变量
这种设置属性的方式才是有效可行的,在用props.get()获取的时候,就用和用props.put()方法设置时用到的属性名一样的属性名去获取值才不会错。
出错的方式有:
如果获取值时用到的属性和设置时用到的属性不一致,就会出现如下错误,未定义的参数currtime,它把currtime看成是一个变量参数,而变量是需要被声明定义的。
出错方式2:
如果我们把属性用声明的变量来表示,脚本如下,
运行脚本会发现,这样去设置属性值根本行不通,因为props.put()方法的运行规则要求属性名是有双引号引起的。
这里指示props.put()方法的调用出了问题。所以不能用变量去设置属性名,行不通。这可能是jmeter不太完善的地方。
出错方式3:
关于使用props.put()方法去设置属性值,对属性的value这个参数是有要求的,例子如下
这里调用${__time()}函数来作为属性的value, 但是这里有个问题,单独使用这个函数的时候,对于格式不加双引号没问题,但是这里使用的时候不加双引号,就报错了。报错如下:
改过来,都不带双引号
报错如下:
因为变量nowTime没有声明定义,所以要声明定义一下
可见,即使声明了,也报错,还是如错误方式1一样,关于属性参数这个参数,不能用变量。
应对方式:把{__time(yyyy-MM-dd HH:mm:ss)}函数里的格式加上双引号,就不再报错了。
运行结果:
这样就成功运行了time函数的值,也把值赋给了属性nowTime.
2. 通过props.put()设置的属性值之前认为只能通过props.get()方法获取,但其实也能通过属性函数${__property()}和 ${__P()}获取【这个做法在beanshell或jsr223 sampler中不适用】,例子如下
在jsr223 sampler或Beanshell脚本里不适用。不知道什么原因,可能是jmeter不够完善的地方吧。
把脚本里的取属性的写法写成和debug sampler标题上的写法一致,结果报错,编译通不过。
这里的原因是:我的思考:因为这里刚通过props.put()设置了属性,直接调用属性函数来取行不通,因为脚本的执行和debug sampler的执行走的是不同的路径。所以,每次在beanshell sampler中用属性函数去获取值时,都会报错。
要注意的是,在属性函数里,属性名切记不要加双引号,因为属性函数中默认属性名是字符串格式。
相关文章:

jmeter在beanshell中使用props.put()方法的注意事项
在jmeter中,通常使用beanshell去处理一些属性的设置和获取的操作,而这些操作也是有一定的规则的。 1. 设置属性时,在属性名上要加双引号,这代表它不是一个需要用var去声明的变量 这种设置属性的方式才是有效可行的,在…...

息肉检测数据集 yolov5 yolov8适用于目标检测训练已经调整为yolo格式可直接训练yolo网络
息肉检测数据集 yolov5 yolov8格式 息肉检测数据集介绍 数据集概述 名称:息肉检测数据集(基于某公开的分割数据集调整)用途:适用于目标检测任务,特别是内窥镜图像中的息肉检测格式:YOLO格式(边…...
通过API进行Milvus实例配置
更新Milvus各个组件的配置参数。 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。 编辑调试 授权信息 下表是API对应的授权信息,可以在RAM权限策略语句的…...

Excelize 开源基础库 2.9.0 版本正式发布
Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Excel、WPS、OpenOffice 等办公软件创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式…...

人脸识别-特征算法
文章目录 一、LBPH算法1.基本原理2.实现步骤3.代码实现 二、Eigenfaces算法1.特点2.代码实习 三、FisherFaces算法1.算法原理2.算法特点3.代码实现 四、总结 人脸识别特征识别器是数字信息发展中的一种生物特征识别技术,其核心在于通过特定的算法和技术手段…...

C++【内存管理】(超详细讲解C++内存管理以及new与delete的使用和原理)
文章目录 1.C/C内存分布2.C语言中动态内存管理方式3.C内存管理方式3.1 new/delete操作内置类型3. 2new/delete操作自定义类型 4. operator new与operator delete函数(重点)5. new和delete的实现原理5.1 内置类型5.2 自定义类型5.2.1 自定义类型调用new[]…...

elementUi el-table 表头高度异常问题
1、现象 在同一个页面通过状态切换不同table时,当从有合并标头行的table切换到无合并表头的table时,无合并表头的table的表头的高度异常了,如下图 切换后 2、解决 给每个el-table 加上一个唯一的key <el-table key"1"></…...

kubekey的应用
随着 Kubernetes 社区的不断发展,即将迎来 Kubernetes 1.30 版本的迭代。在早先的 1.24 版本中,社区作出一个重要决策:不再默认集成 Docker 作为容器运行时,即取消了对 Docker 的默认支持。这就像咱们家厨房换了个新灶头ÿ…...

如何识别并分类转录因子的家族
愿武艺晴小朋友一定得每天都开心 当我们有了差异表达的转录因子列表以后,接下来可能就想知道这些转录因子的家族分布情况是怎样的?有没有1-2个Family在其中起主要作用,占比较多。 基于这种需求,可以按以下几步来实现: 1)从AnimalTFDB4转录因子数据库中,根据需要…...

【C++11】可变模板参数详解
个人主页:chian-ocean 文章专栏 C 可变模板参数详解 1. 引言 C模板是现代C编程中一个非常强大且灵活的工具。在C11标准中,引入了可变模板参数(variadic templates),它为模板编程带来了革命性改变。它的出现允许我们…...

本地群晖NAS安装phpMyAdmin管理MySQ数据库实战指南
文章目录 前言1. 安装MySQL2. 安装phpMyAdmin3. 修改User表4. 本地测试连接MySQL5. 安装cpolar内网穿透6. 配置MySQL公网访问地址7. 配置MySQL固定公网地址8. 配置phpMyAdmin公网地址9. 配置phpmyadmin固定公网地址 前言 本文主要介绍如何在群晖NAS安装MySQL与数据库管理软件p…...
QTableWidget 接口详情
Qt Widgets->C Classes->QTableWidget Qt 5.12版本QTableWidget接口详情(机翻) QTableWidget类提供了一个带有默认模型的基于项的表视图。 属性 列数columnCount : int 行数rowCount : int 细节描述 QTableWidget类提供了一个带有默认模型的基…...
GESP CCF python四级编程等级考试认证真题 2024年9月
一、单选题(每题 2 分,共 30 分) 第 1 题 据有关资料,山东大学于1972年研制成功DJL-1计算机,并于1973年投入运行,其综合性能居当时全国第三位。DJL-1计算机运算控制部分所使用的磁心存储元件由磁心颗粒组成…...
oracle数据库名实例名服务名
Oracle数据库是一个复杂的系统,它包含多个组件,包括数据库服务器、实例和服务。 数据库名(DB_NAME):这是数据库的内部名称,通常在创建数据库时指定,并在整个数据库生命周期内保持不变。 实例名…...

python+appium+雷电模拟器安卓自动化及踩坑
一、环境安装 环境:window11 1.1 安装Android SDK AndroidDevTools - Android开发工具 Android SDK下载 Android Studio下载 Gradle下载 SDK Tools下载 这里面任选一个就可以,最终下载完主要要安装操作安卓的工具adb,安装这个步骤的前提是要…...

Python第七八次作业
1.输入一个大于0的正整数n,如果n 1 ,则返回1, 如果n是偶数,则返回 n // 2 ,如果n是奇数,则返回 3n 1,将所有的返回值存放到一个列表中,注意:n是第一个元素,其他的元素根…...

Leetcode——数组:螺旋矩阵59.螺旋矩阵
题目 思路 对于每层,从左上方开始以顺时针的顺序填入所有元素。假设当前层的左上角位于 (top,left),右下角位于 (bottom,right),按照如下顺序填入当前层的元素。 从左到右填入上侧元素,依次为 (top,left) 到 (top,right)。 从上到…...

C++类与对象-继承和多态(超全整理)
前言 前面讲类与对象上中下时,所讲的都是在单个类中相关的语法(初始化列表、this指针、静态成员、常函数和常对象......)或者使两个不同的类产生联系的语法(友元)。而本文虽然也是类与对象的内容,但和之前的…...

3.3 Thymeleaf语法
文章目录 引言Thymeleaf标签显示标签链接地址标签条件判断标签元素遍历标签 Thymeleaf表达式变量表达式选择变量表达式消息表达式链接表达式 Thymeleaf内置对象上下文对象上下文变量上下文区域请求对象响应对象会话对象日期对象 实战演练创建控制器创建模板页面 结语 引言 Thy…...

使用Dlib库实现人脸检测和关键点定位
目录 前言 一、安装Dlib库 二、人脸检测 三、人脸关键点定位 前言 Dlib是一个现代化的 C 工具包,提供了一些机器学习算法和工具,特别是在面部识别和人脸关键点检测方面非常流行。它具有易于使用的 Python 接口,并被广泛应用于计算机视觉项…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

spring boot使用HttpServletResponse实现sse后端流式输出消息
1.以前只是看过SSE的相关文章,没有具体实践,这次接入AI大模型使用到了流式输出,涉及到给前端流式返回,所以记录一下。 2.resp要设置为text/event-stream resp.setContentType("text/event-stream"); resp.setCharacter…...

生信服务器 | 做生信为什么推荐使用Linux服务器?
原文链接:生信服务器 | 做生信为什么推荐使用Linux服务器? 一、 做生信为什么推荐使用服务器? 大家好,我是小杜。在做生信分析的同学,或是将接触学习生信分析的同学,<font style"color:rgb(53, 1…...