Jmeter属性和变量

一、Jmeter中的属性:

1、JMeter属性统一定义在jmeter.properties文件中,我们可以在该文件中添加自定义的属性

2、JMeter属性在测试脚本的任何地方都是可见的(全局),通常被用来定义一些JMeter使用的默认值,可以用于在线程间传递信息。

3、JMeter属性可以在测试计划中通过函数 _P 进行引用,但是不能作为特定线程的变量值。
这里写图片描述

4、JMeter属性可以通过_setProperty 函数来定义JMeter属性

5、JMeter属性是大小写敏感的

6、WorkBench中的属性查看组件:

   WorkBench右键—>Add—>Non Test Elements—>Property Display

  这里写图片描述

二、Jmeter中的变量:

1、JMeter变量对于测试线程而言是局部变量。

2、在不同测试线程中,JMeter变量既可以是完全相同的,也可以是不同的。

3、JMeter变量引用方法:${name}

4、JMeter变量是大小写敏感的

5、如果有某个线程更新了变量,那么仅仅是更新了变量在该线程中复制的值

6、Jmeter中定义变量的地方:

  a) 测试计划(Test plan),在右边的面板上添加User Defined Variables

  b) 线程组,右键选择 配置元件( config element)–>User Defined Variables

  c) 通过前置或后置处理器生成的变量,可参考我的另一篇:Jmeter关联

  d)使用csv参数化的变量,参数化可参考我另一篇:Jmeter参数化

 注意:通过 a 和 b 两种方式定义的变量,在JMeter启动时对这个测试计划都是可见的。如果同一个变量在多个 b 中被定义,那么只有最后一个定义会生效。一旦某个线程启动后,那么整个变量集合的初始值就会被复制到该线程中。其他测试元件,例如 c 或者 d 可以被用来重新定义变量,这些重定义仅仅影响当前线程。

作者:Glen.He
出处:http://www.cnblogs.com/puresoul/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

### JMeter 内置变量类使用说明 #### 1. `vars` 变量 `vars` 是 `org.apache.jmeter.threads.JMeterVariables` 类的一个实例,用于对变量进行读写操作。此对象仅限于当前线程组内的使用[^1]。 ```java // 设置变量 "name" vars.put("name", "shenzhen"); // 获取并打印变量 "name" String shen = vars.get("name"); log.info("name value is " + shen); ``` #### 2. `props` 变量 `props` 实际上是一个 `java.util.Properties` 的实例,可以用来存储全局属性。这些属性可以在整个测试计划中的任何地方访问[^4]。 ```java // 设置全局属性 props.put("globalVar", "value"); // 获取全局属性 String globalValue = props.getProperty("globalVar"); ``` #### 3. `prev` 对象 `prev` 表示前一次采样器的结果 (`SampleResult`) ,可用于获取上次请求的信息,比如响应时间、状态码等。 ```java if (prev.getResponseCode().equals("200")) { log.info("Last request was successful."); } ``` #### 4. 上下文(`ctx`) 上下文提供了更多关于当前执行环境的信息,例如可以通过它获得所有的变量集合或其他配置项[^2]。 ```java import org.apache.jmeter.engine.StandardJMeterEngine; import org.apache.jmeter.threads.JMeterContext; JMeterContext ctx = getThreadContext(); Map<String, Object> allVars = ctx.getVariables().getAllAsMap(); for (String key : allVars.keySet()) { System.out.println(key + ": " + allVars.get(key)); } ``` #### 5. 命令行参数解析 当从命令行启动 JMeter 脚本时,可使用的选项包括但不限于 `-n`, `-t`, `-l`, `-r`, `-H`, `-P`. 这些标志允许指定无头模式运行、目标脚本路径、结果日志位置以及网络代理设置等[^5]. ```bash ./jmeter.sh -n -t test.jmx -l result.jtl ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值