jmeter Groovy中的算术运算

时间:2017-10-03 12:46:35

标签: groovy jmeter

我对groovy中的计算有疑问。 我创建了一个从另一个采样器接收变量的脚本。 我把变量放在一个新变量中(不想弄乱源代码)。

我试图将结果加倍,问题是它是一个字符串而不是数学中的乘法。 变量是6,我想显示12,但它显示6.0 6.0。

此外,如何将结果保存在新变量中?

先谢谢

System.out.println(" Impression Price *2 is:  " + Impression_price*2);
System.out.println(" Impression Price*2  is:  " + (Impression_price.multiply(2.0))); 

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:2)

您需要将args[3] String转换为相应的numeric type,例如:

def Impression_price = args[3] as float

演示:

JSR223 Numeric Operations

更多信息:Creating JMeter Variables in Java - The Ultimate Guide

答案 1 :(得分:1)

您需要使用Double.parseDouble转换String do double,例如:

def Impression_price= Double.parseDouble(args[3]);

当您记录时,您需要使用String.valueOf转换回String,例如:

log.info(String.valueOf(Impression_price*2));

要设置非String值,您需要使用vars.putObject

vars.putObject("Impression_price_double", Impression_price *2);