在JMeter中调用来自不同采样器的函数 - Groovy

时间:2017-11-17 15:16:07

标签: groovy jmeter

我有一个从DB(预算)获取数据的采样器,我有一些断言,我使用JSR223断言。 在每个断言中,我编写相同的函数(check_budget),并向每个断言传递不同的值(start_budget,end_budget等)

问题是我复制了每个断言的代码,并且对维护不友好。(如果逻辑更改需要在7个重复的函数中更改) 有一种方法可以创建一个采样器并在其中编写泛型函数(calc_budget)并从每个断言中调用它, 比如在java中创建一个类并执行import?

enter image description here enter image description here

2 个答案:

答案 0 :(得分:1)

在这种情况下,通常情况下,您可以将groovy脚本保存在脚本文件中,并从所有JSR223 elements

调用相同的脚本文件
  

脚本文件   要用作JSR223脚本的文件的名称,如果使用相对文件路径,则它将相对于“user.dir”引用的目录系统属性

答案 1 :(得分:1)

在Groovy中你有evaluate()函数,所以你把它存储到JMeter变量或JMeter属性或文件中你可以这样称呼它:

evaluate(vars.get('your_var'))

evaluate(new File('your_test.groovy'))

有关详细信息,请参阅Scripting JMeter Assertions in Groovy - A Tutorial文章。