在Jmeter中,是否可以在测试计划开始时创建可重用的对象?

时间:2015-01-25 17:43:29

标签: jmeter

在Jmeter中,是否可以在测试计划开始时创建可重用的对象?

例如,我可以实例化一个Groovy Sql.class对象,然后可以访问该套件其余部分的那个类对象吗?

如果可以的话,我正在寻找一个基本的想法,我会怎么做。

3 个答案:

答案 0 :(得分:1)

使用props.put(String name, Object value)方法如下:

在第一个采样器中:

Sql sql = new Sql();
props.put("sql", sql);

在第二个采样器中:

Sql sql = props.get("sql");
sql.invokeMethod();

JMeter属性是全局的,一旦定义,您将能够在测试计划中的任何位置访问对象值。

有关域的更多和更好的解释,请参阅How to use BeanShell: JMeter's favorite built-in component指南,大多数预定义的变量,如“props”,“ctx”,“vars”等,对于Beanshell和JSR223 /是相同的常规

答案 1 :(得分:0)

为此,您使用安装线程组:

它相当于JUnit中的setUp

答案 2 :(得分:0)

我得到 BeanShellInterpreter错误...在命名空间中找不到类。我的解决方法是将其类型更改为' var'而不是' Sql' (参考https://stackoverflow.com/a/28146406/4386440)。

而不是

Sql sql = props.get("sql");
sql.invokeMethod();

我用过

var sql = props.get("sql");
sql.invokeMethod();