Jmeter之内置函数__property和__P的区别

1. __property函数

作用

读取 Jmeter 属性

语法格式

${__property(key,var,default)}

参数讲解
小栗子

${__property(key)}

  • 读取 key 属性
  • 如果找不到 key 属性,则返回 key(属性名)
     

${__property(key,,default)}

  • 读取 key 属性
  • 如果找不到 key 属性,则返回 default
     

${__property(key,prop,default)}

将读取到的属性值存储到 prop 变量中,可通过 ${prop} 引用

实际栗子

线程组

结果树


前三个 sampler 读取的属性是存在的,所以会返回对应的值
最后一个 sampler 读取了不存在的属性,返回了默认值

重点

  • 如果没有加 , 则代表没有传默认值,意味着默认值参数是 null(空),会返回属性名,如: ${__property(keys)} 
  • 如果加了 ,  代表有传参但没有填值,代表值为空字符串,如: ${__property(keys,,)} 
  • 对于这个函数,若属性不存在,且默认值传了空字符串,则不会返回属性名,如最后一个 sampler
  • 如果不传默认值参数,不等价于默认值可以填 null,这是字符串的 null,不是空

2. __P函数

作用

和 __property 作用一样,不过这是简化版的

语法格式

${__P(key,default)}

参数讲解
 

和 __property 的区别

无法指定引用变量名
若属性名不存在,且未提供默认值,会返回 1 而不是属性名

函数助手

实际栗子
线程组

结果树

重点

  • 如果没有加 , 则代表没有传默认值,意味着默认值参数是 null(空),会返回 1,如: ${__P(user.dirs)} 
  • 如果加了 , 代表有传参但没有填值,代表值为空字符串,如:  ${__P(user.dir,)}  
  • 对于这个函数,若属性不存在,且默认值传了空字符串,则不会返回 1,如最后一个 sampler
  • 如果不传默认值参数,不等价于默认值可以填 null,这是字符串的 null,不是空
     

3.总结

1、函数助手里的 __P及__property的使用

${__P(init,2)} , ${__property(init,start,200)}

可以自行定义变量名称,及变量的默认值  

P 变量名为init, 值为2 ,使用的时候直接${__P(init,2)}就可以,改变量的结果为2 

${__property(init,start,200)} 变量名为init, 默认值为200,同时会将200默认传给start这个变量,start可进行再使用 ${start}

2、还有一种用法是直接在jmeter.properties的文件中添加几个固定的变量

#默认的一些值

group1.thread = 10 

group2.rampup=1

设置好这些内容后重启jmeter,可以通过p /property使用这些变量  

${__P(group1.thread)} , ${__property(group1.thread,save,)}

这样的变量会去jmeter.properties里面读取相应的配置默认值

P和property的区别就是是否将第一个变量的值存储到另外一个变量中

其它JMeter内置函数请参考51CTO搜索-51CTO.COM

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/700008.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python:函数

目录 前言: 一、函数的定义 二、函数的调用 三、函数的分类 四、全局变量和局部变量 五、函数的参数 5.1 位置参数 5.2 默认值参数 5.3 可变参数 5.4 关键字参数 5.5 命名关键字参数 5.6 参数的组合 六、函数的递归 前言: 函数就是一个过程…

【推荐】渗透测试面试(问题+答案)

1、介绍一下自认为有趣的挖洞经历 2、你平时用的比较多的漏洞是哪些?相关漏洞的原理?以及对应漏洞的修复方案? 3、php/java反序列化漏洞的原理?解决方案? 4、如果一台服务器被入侵后,你会如何做应急响应? 5、你平时使用哪些工具?以及对应…

ETL:数据转换与集成的关键过程

ETL:数据转换与集成的关键过程 在现代数据驱动的世界中,有效地管理和处理数据对于企业的成功至关重要。ETL(提取、转换、加载)是一种关键的数据处理过程,有助于将数据从源系统提取、清洗、转换并加载到目标系统中&…

【SQL】exists关键字使用介绍

EXISTS关键字的工作原理: 子查询会先执行,然后将结果与主查询进行比较。如果子查询返回至少一行数据,则EXISTS返回TRUE;否则返回FALSE。EXISTS关键字在遇到第一个满足条件的行时就会停止搜索,因此它可以提高查询性能。…

学习JAVA的第二天(基础)

目录 基本概念 关键字 class关键字 字面量 练习 变量 定义格式 变量使用 数据类型 基本数据类型 标识符 命名规则 键盘录入 1.导包 2.创建对象 3.接受数据 运算符 算术运算符 练习 隐式转换(自动类型提升) 强制转换 自增自减运算符 …

【网络编程】okhttp源码解析

文章目录 配置清单框架结构解析 配置清单 首先了解一下okHttp的配置清单&#xff1a; Dispatcher dispatcher &#xff1a;调度器&#xff0c;⽤于调度后台发起的⽹络请求&#xff0c;有后台总请求数和单主机总请求数的控制。List<Protocol> protocols &#xff1a;⽀持…

PostgreSQL 实体化视图的使用

上周的教程中&#xff0c;通过 DVD Rental Database 示例&#xff0c;让我们了解了在 PostgreSQL 中创建实体化视图的过程。正如我们所了解的&#xff0c;PostgreSQL 实体化视图提供了一种强大的机制&#xff0c;通过预计算和存储查询结果集为物理表来提高查询性能。接下来的内…

leetcode刷题日志-98.验证二叉搜索树

思路&#xff1a;根据二叉搜索树的性质&#xff0c;中序遍历满足升序。那么我们就可以使用中序dfs&#xff0c;并且记录每个节点的前一个节点的值&#xff0c;如果前一个节点值比后一个大&#xff0c;返回false。 class Solution {Integer pre null; //记录前序节点boolean …

HarmonyOS | 状态管理(二) | @Prop装饰器

系列文章目录 1.HarmonyOS | 状态管理(一) | State装饰器 文章目录 系列文章目录前言一、Prop装饰器是什么&#xff1f;二、限制条件三、使用场景父组件State到子组件Prop简单数据类型同步从父组件中的State类对象属性到Prop简单类型的同步 前言 通过上一篇 HarmonyOS | 状态…

2.23数据结构

单向循环链表 创建单向循环链表&#xff0c;创建节点 &#xff0c;头插&#xff0c;按位置插入&#xff0c;输出&#xff0c;尾删&#xff0c;按位置删除功能 //main.c #include "loop_list.h" int main() {loop_p Hcreate_head();insert_head(H,12);insert_head(…

推理还原的干货

故事的递进还原 从下层故事到上层故事 设定还原 还原的逻辑 隐藏信息拼凑、因果导致果推因、规则还原现象 设计思路&#xff1a; 真解答 真解答的关键信息 推理逻辑链 哪些环节可以被误导 如何把关键信息变成伪解答 解释变形信息 给出识别变形信息的方法或线索 其实看似一个…

3分钟看懂设计模式02:观察者模式

一、什么是观察者模式 观察者模式又叫做发布-订阅模式或者源-监视器模式。 结合它的各种别名大概就可以明白这种模式是做什么的。 其实就是观察与被观察&#xff0c;一个对象&#xff08;被观察者&#xff09;的状态改变会被通知到观察者&#xff0c;并根据通知产生各自的不…

VTK通过线段裁剪

线段拆分网格 void retrustMesh(vtkSmartPointer<vtkPolyData> polydata, vtkSmartPointer<vtkPoints> intermediatePoint) {vtkSmartPointer<vtkPoints> srcPoints polydata->GetPoints();int pointSize intermediatePoint->GetNumberOfPoints();/…

Vue2:路由的params参数用法

一、情景说明 在前面我们学习了路由的query参数用法 这里&#xff0c;我们学习一下params参数写法 二、案例 1、传递参数 index.js 修改了detail的path配置项&#xff0c;声明了两个变量名 // 该文件专门用于创建整个应用的路由器 import VueRouter from vue-router //引入…

opencascade4解析

1.main.cpp #include "Viewer.h" // 包含自定义的 Viewer 头文件#include <BRepTools.hxx> // 包含 OpenCASCADE 中用于处理 BREP 文件的工具 #include <BRepPrimAPI_MakeBox.hxx> // 包含创建简单几何体的 APIint main(int argc, char** argv) {// …

【动态规划】【状态压缩】LCP04 覆盖

作者推荐 【广度优先搜索】【网格】【割点】【 推荐】1263. 推箱子 本文涉及知识点 动态规划汇总 LCP04 覆盖 你有一块棋盘&#xff0c;棋盘上有一些格子已经坏掉了。你还有无穷块大小为1 * 2的多米诺骨牌&#xff0c;你想把这些骨牌不重叠地覆盖在完好的格子上&#xff0…

maven3旧版本的下载地址(含新版本)

因为现有的3.8版本与IDEA不兼容&#xff0c;我需要下载3.6版本&#xff0c;但是官网的位置非常隐蔽&#xff0c;找了很多资料才看到。故记录一下。 第一步 进入网址&#xff0c;选择需要的版本 Index of /dist/maven/maven-3 第二步 选择binaries 第三步 选择zip文件下载就可…

Django内置模型查询讲解

Django框架的核心特性之一是它的对象关系映射&#xff08;ORM&#xff09;系统&#xff0c;它允许开发者使用Python代码与数据库进行交互&#xff0c;而无需编写原始的SQL查询。Django的ORM提供了丰富的API来执行复杂的数据库查询。在这篇博客中&#xff0c;我们将详细讲解Djan…

【Java程序设计】【C00285】基于Springboot的游戏分享网站(有论文)

基于Springboot的游戏分享网站&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的游戏分享网站 本系统分为系统功能模块、管理员功能模块以及用户功能模块。 系统功能模块&#xff1a;在网站首页可以查看首页、游戏…

uniapp-提现功能(demo)

页面布局 提现页面 有一个输入框 一个提现按钮 一段提现全部的文字 首先用v-model 和data内的数据双向绑定 输入框逻辑分析 输入框的逻辑 为了符合日常输出 所以要对输入框加一些条件限制 因为是提现 所以对输入的字符做筛选,只允许出现小数点和数字 这里用正则实现的 小数点…