jmeter - Jmeter中每个线程的增量日期
问题描述
我有预约的要求,值不应该重叠。所以我必须增加每个线程的开始时间和结束时间,它应该考虑从上午 9:00 到下午 6:00 的时间。我在下面写了 Groovy 代码增加日期。但是对于每个线程,我都得到相同的值。下面是日志查看器,我们可以在其中看到,对于所有 4 个线程,值都没有改变。任何帮助,将不胜感激。
def now = new Date()
log.info('Before: ' + now.format('HH:mm'))
use(groovy.time.TimeCategory) {
def nowPlus60Mins = now + 60.minutes
def nowPlus15Mins = nowPlus60Mins + 15.minutes
props.put('After',nowPlus60Mins.format('HH:mm'));
props.put('End',nowPlus15Mins.format('HH:mm'));
log.info('After: ' + props.get('After'))
log.info('End: ' + props.get('End'))
}
解决方案
根据JMeter 文档:
属性与变量不同。变量是线程本地的;属性对所有线程都是通用的
因此,您正在做的是覆盖该值,因此所有线程都使用相同的(最后一个)线程。
考虑从props
to切换vars
,你应该得到预期的结果。
此外,JMeter 提供了__timeShift() 函数,因此您甚至不需要任何自定义 Groovy 脚本
推荐阅读
- reactjs - 当在 draft-js 中单击编辑器时,focus() 会导致页面向上滚动
- ssis - SSIS中增量负载的最佳方法是什么
- python - Python 3 lambda 错误:Series 的真值不明确
- oracle - 我可以通过 Oracle SQL Developer 连接到我的架构,但不能通过 JDBC
- c# - 在 texbox 中按回车键调用一个方法
- sql - DBMS_METADATA.GET_DDL 的任何替代方式
- typescript - 带接口参数的函数重载
- javascript - 有哪些依赖“typeof null”返回对象的代码示例?
- java - 根据另一个数组对对象的 ArrayList 进行排序
- encryption - 基于客户端身份验证加密解密 DynamoDB 数据