在JMeter中使用函数主要有以下两种方式:
- 直接在测试元素的输入框中使用函数表达式。
例如:
HTTP请求:
请求URL:http://example.com/user?name=${__StringFunc(RANDOM,5)}
- 使用函数助手(Function Helper)元素,在其中构造函数表达式,然后引用表达式的结果。
例如:
函数助手:
名称:random_string
函数表达式:$ {__StringFunc(RANDOM,10)}
HTTP请求:
请求URL:http://example.com/user?name=${random_string}
函数表达式的语法为:${函数名(参数1,参数2,…)}
- 参数使用逗号分隔
-部分函数不需要参数
一个更复杂的示例:
函数助手:
名称:random_num
函数表达式:${__Random(1,100)}
if函数:
表达式:$ {random_num} > 50
为真:${__Random(60,100)}
为假:${__Random(1,50)}
函数助手:
名称:result
函数表达式:${ifFunc}
HTTP请求:
请求URL:http://httpbin.org/get?num=${result}
运行测试计划,random_num函数助手会生成1-100的随机数。
if函数会判断该随机数是否大于50,如果是,生成60-100的随机数,否则生成1-50的随机数。
result函数助手会存储if函数的结果。
HTTP请求会引用result函数助手,使用if函数的结果作为请求参数。
使用函数允许我们在JMeter中使用丰富的函数表达式,提高测试的灵活性。结合函数助手,我们可以构造更加复杂的逻辑。