gpt4 book ai didi

groovy - 在 JMeter 中增加用户定义的变量

转载 作者:行者123 更新时间:2023-12-02 01:02:21 25 4
gpt4 key购买 nike

我有一个要测试性能的注册 REST 服务。只需为每个循环/线程请求更改必需的参数 mobilenumber

作为负载测试的一部分,如何在线程/循环到多个测试时增加我的用户定义变量(通过增加存储为另一个 udv 的值)。

尝试为所有成功的注册请求使用 jsr 233 预处理器

我不想使用 csv,因为我只有一个参数要更改

我正在阅读有关 var.get() 和 vars.put() 函数的信息,这些函数可以使用但无法正确理解。


尝试以下代码 - 代码下方显示的登录

log.info("Before execution")
log.info("${mobileNumber}") // my udv mobileNumber
log.info("${increment}") // my udv increment value

inc = ${increment}

long number = Long.parseLong(vars.get("mobileNumber"))

number = number + inc

log.info("Incremented number")
log.info(String.valueOf(number))

vars.put("mobileNumber", String.valueOf(number))

log.info("After Execution")
log.info("${mobileNumber}")

日志:

2014/11/25 09:25:26 INFO  - jmeter.threads.JMeterThread: Thread started: Dummy services 1-1 
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: Before execution
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: 9990000000
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: 1000
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: Incremented number
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: 9990001000
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: After Execution
2014/11/25 09:25:26 INFO - jmeter.protocol.java.sampler.JSR223Sampler: 9990000000
2014/11/25 09:25:26 INFO - jmeter.threads.JMeterThread: Thread finished: Dummy services 1-1

根据日志,Increment 成功但 vars.put() 不成功 ??

最佳答案

鉴于手机号码最长可达 15 位,您需要使用 Long Java 类。

假设你的UDV持有手机号码是“number”你可以使用下面的代码片段:

long number = Long.parseLong(vars.get("number")); 
number = number + 1;
vars.put("number", String.valueOf(number));

您也可以考虑使用 __RandomString() JMeter 函数生成任意长度的随机数(该函数使用 String 表示)。

有关varsctx 和其他暴露给启用脚本的测试元素的 JMeter API 对象的额外信息,请参阅 How to use BeanShell: JMeter's favorite built-in component指导。

关于groovy - 在 JMeter 中增加用户定义的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27104548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com