在JMeter中的另一个用户定义变量中使用用户定义变量的值

时间:2018-06-07 11:48:28

标签: testing jmeter

是否有可能在另一个用户定义变量中传递用户定义变量的值?如何执行此操作?

我有一个变量(名称|值):

<div id="mydiv">   
    <input type="checkbox" name="subject[]" value="biology">biology<br>
    <input type="checkbox" name="subject[]" value="physics">physics<br>
    <input type="checkbox" name="subject[]" value="maths">maths<br>
    <input type="checkbox" name="subject[]" value="science">science<br>
    <input type="submit" value="Calculate" name="submit" class="wpcf7-submit">
</div>

我希望在另一个中使用它:

version | 5.6

enter image description here

它不起作用,因为config | config_${version}.csv 被视为字符串而不是变量。

我已尝试使用${version}函数(相同)和__eval(然后变量__P的值为config1.csv,因此config为被视为${version}

我正在使用JMeter 3.3。

2 个答案:

答案 0 :(得分:2)

请注意User Defined Variables中的警告:

  

在处理元素之前,变量不可用,因此您不能引用在同一元素中定义的变量。您可以引用早期UDV或测试计划中定义的变量。

因此,您可以将版本变量声明为Test Plan,并使用用户定义变量中的__V函数调用它:

   ${__V(config_${version}.csv)}

另一种选择是使用 User Parameters函数

的类似用法移至__V
  

要在测试运行期间定义变量,请参阅用户参数。 UDV按照它们在计划中出现的顺序从上到下进行处理。

注意:__P用于检索JMeter属性而不是变量

答案 1 :(得分:0)

您可以使用jp@gc - Parameterized Controller

检查以下快照

enter image description here

enter image description here

由您决定使用参数化控制器代替UDV或将它们组合起来