我的目标是找到如何定义从带有索引的脚本获得的变量的方法。例如像d1..dn所以我可以在测试步骤中进一步使用它,如$ {d1}
//${proparray} = [5787,76380,54418,21856,35229]
///log.info (${proparray}.length)
var arraylength = ${proparray}.length -1
for (var i = 0; i < arraylength ; i++ )
{
this ["element"+[i+1]] = ${proparray}[i]
}
我设法在脚本中定义变量元素[i + 1],但是如何将它在脚本之外传递给具有相应索引的变量。我怀疑我应该以某种方式使用vars.put但它对我不起作用。
答案 0 :(得分:0)
如果您需要像在JavaScript中那样在JMeter中定义变量,可以使用任何JSR223 Test Element和以下代码:
Obs row_num Height Location Price
1 1 Low Front 125
2 1 Low Middle 185
3 1 Low Rear 126
4 2 Low Front 143
5 2 Low Middle 170
6 2 Low Rear 136
7 3 Medium Front 141
8 3 Medium Middle 176
9 3 Medium Rear 128
10 4 Medium Front 137
11 4 Medium Middle 161
12 4 Medium Rear 133
13 5 High Front 129
14 5 High Middle 157
15 5 High Rear 149
16 6 High Front 141
17 6 High Middle 152
18 6 High Rear 137
它将创建以下JMeter Variables:
您可以在&#34;普通&#34;中访问它们。将元素测试为def proparray = [5787, 76380, 54418, 21856, 35229]
proparray.eachWithIndex { number, idx ->
vars.put('d' + idx, number as String)
}
或将JSR223测试元素测试为$d1
有关JMeter测试中的Groovy脚本的详细信息,请参阅Apache Groovy - Why and How You Should Use It