Jmeter JMS 点对点动态消息内容

Jmeter JMS point-to-point with dynamic messgae content

我是jmeter的新手。我正在尝试设置 JMS 点对点负载测试脚本。请求消息是固定长度的格式。我需要一种从 csv 中读取字段并以固定长度格式排列它们的方法。我尝试使用 javascript 切片函数,方法是使用 csv 数据配置变量并切片到所需的长度,将它们全部连接在一行中。但它不起作用。可能是我的方法不对。关于如何使其使用固定长度格式的任何指示都会有所帮助。 这是我试过的:

${__javascript(("      ".slice(-6))+(("0000000000000000"+${Var2}).slice(-16)) + (("                   " + ${Var3}).slice(-19))+(("   "+${Var4}).slice(-3))}

其中 Var1、Var2..Var4 来自 csv。

Jmeter version:3.3

MQ:IBM Websphere MQ

只需一条输入消息,我就可以执行测试。我需要从 csv and/or date/time 函数动态填充值并以固定长度格式排列它们。

  1. 你的代码有错字,函数应该是__javaScript(注意大写S
  2. 您的方法应该可行,但是使用 JavaScript 效率极低,因为每次您调用 __javaScript() function JMeter invokes Rhino or Nashorn interpreter and this may ruin your test in case of high loads. Since JMeter 3.1 users are encouraged to use __groovy() function 进行脚本编写。
  3. 最后但并非最不重要的是,为了获得最佳性能,我建议使用 __substring() function instead of your slice() function. You can install __substring() and other Custom JMeter Functions using JMeter Plugins Manager