我有很多常用的常规功能,可以在不同的“测试计划”中重复使用。我想将它们保存在单独的脚本文件中。我不想创建jar。如何以最小的模糊度将这些文件导入JMeter JSR223断言,预处理器和后处理器中?这些或多或少是模块化功能,出于明显的原因,我想将它们分开。
我尝试使用JSR223的“脚本文件”部分。但这似乎只是为了覆盖脚本。
如何在JSR 223断言/预处理器/后处理器中使用外部Groovy脚本文件?
答案 0 :(得分:1)
如果您想在不同的jsr223元素中使用一堆函数,则可以:
def sum(Integer a, Integer b) {
return a + b
}
def isA(Integer x, Integer y) {
}
def isB(Integer x, Integer y) {
}
vars.putObject('sum', this.&sum)
vars.putObject('isA', this.&isA)
vars.putObject('isB', this.&isB)
def sum= vars.getObject(‘sum’);
println sum(2, 2);
答案 1 :(得分:0)
我不太了解Script file
选项为何对您不起作用,您可以将Groovy代码另存为文件系统上的文件,并通过“脚本文件”输入对其进行引用。
随便。
您可以像使用任何其他测试元素一样使JSR223测试元素模块化:
答案 2 :(得分:0)
您可以在 {JMETER_HOME}/bin/utility.groovy
脚本文件中定义 Groovy 函数。
或者,您可以在自己的 Groovy 脚本中定义该函数,并在 groovy.utilities=bin/utility.groovy
文件中设置属性 user.properties
。
例如,在 Groovy 脚本中添加以下内容
def getRandomRangeOption() {
Random random = new Random()
random.nextBoolean() ? "Between" : "Except"
}
您可以使用
调用该函数${__groovy(getRandomRangeOption())}
来自 JMX 中的任何地方。