JMeter-如何在多个孤立的测试计划之间共享时髦的脚本



我有一堆常见的时髦函数,我在不同的'测试计划'中重复使用它们。我想将它们保存在单独的脚本文件中。我不想创建罐子。如何在JMeter JSR223断言,预处理器和后处理器中以最小的模糊导入这些文件?这些或多或少是模块化功能,出于显而易见的原因,我想将它们分开。

我尝试使用JSR223的"脚本文件"部分。但似乎只是为了覆盖剧本。

如何在 JSR 223 断言/预处理器/后处理器中使用外部 groovy 脚本文件?

如果你有一堆函数想在不同的jsr223元素中重用,你可以:

  1. 在测试计划中,创建一个初始 JSR223 预处理器(或采样器(并定义函数:
def sum(Integer a, Integer b) {
return a + b
}
def isA(Integer x, Integer y) {
}
def isB(Integer x, Integer y) {
}
  1. 然后使用闭包将它们作为对象:
vars.putObject('sum', this.&sum)
vars.putObject('isA', this.&isA)
vars.putObject('isB', this.&isB)
  1. 在脚本中的任何其他 JSR223 元素中,您可以像这样使用这些函数:
def sum= vars.getObject(‘sum’);
println sum(2, 2);

我真的不明白为什么Script file选项对您不起作用,您可以将 Groovy 代码保存为文件系统上的单独文件,并通过"脚本文件"输入引用它们。

无论什么。

您可以使用以下命令使JSR223测试元素模块化,就像任何其他测试元素一样:

  • 测试片段
  • 模块控制器
  • 和包括控制器组合

您可以在脚本文件中定义 Groovy 函数{JMETER_HOME}/bin/utility.groovy

(可选(您可以在自己的 Groovy 脚本中定义函数,并在user.properties文件中设置属性groovy.utilities=bin/utility.groovy

例如,将以下内容添加到 Groovy 脚本中

def getRandomRangeOption() {
Random random = new Random()
random.nextBoolean() ? "Between" : "Except"
}

您可以使用

${__groovy(getRandomRangeOption())}

从您的 JMX 中的任何地方。

相关内容

最新更新