JMeter自定义插件变量替换

时间:2019-06-04 10:24:59

标签: jmeter jmeter-plugins jmeter-5.0

上下文

我正在开发一个自定义的JMeter插件,该插件从树状结构动态生成测试数据。

树的编辑器根据需要生成GUI输入字段,因此我没有在相应的TestElement中设置的一组定义的配置属性。相反,我在GUI类中将树整体进行了序列化,将结果设置为一个属性,并在config元素中将其反序列化,然后在测试执行期间对其进行进一步处理。

问题

这很好用,除了不对动态输入字段中的${foo}${_bar(..)}之类的JMeter变量/函数表达式进行求值。据我了解的JMeter源代码,如果使用了org.apache.jmeter.testelement.TestElement中的各个属性设置器,则评估会以某种方式触发,这对于我的插件是不可能的。

不幸的是,我无法找到合适的实现,可以在我的config元素中使用它来反序列化后显式评估此类表达式。

问题

我需要一个指向JMeter源代码或文档的指针,以明确评估变量/函数表达式。

1 个答案:

答案 0 :(得分:0)

在设法在IDE中正确设置JMeter-Project之后,我发现org.apache.jmeter.engine.util.CompoundVariable可以这样使用:

CompoundVariable compoundVariable = new CompoundVariable();
compoundVariable.setParameters("${foo}");

// returns the value of the expression in the current context
compoundVariable.execute();