在Jmeter中使用setup threadgroup和teardown threagroup的目的是什么?请用例子说明

时间:2013-12-05 07:46:33

标签: jmeter

在Jmeter中使用setup threadgroup和teardown threagroup的目的是什么?请用例子说明。

我知道为什么我们使用线程组,并且还知道设置用于预先活动,例如创建用户和监视目的,但不确定事件在哪里可以使用它。与拆除一样。

3 个答案:

答案 0 :(得分:0)

听起来你已经把它弄清楚了,但是让我举几个例子说明我何时使用它。

设置:

  • 从数据库中获取大型数据集到jmeter变量中,以便在测试期间使用。
  • 从被测系统获取并记录版本号:s版本号。
  • 运行javascript以根据更简单的输入参数/属性设置jmeter属性。假设您希望将目标主机的选择配置为一个简单的真/假值,但在测试中,您需要将其扩展为不同的字符串,并且您不希望在整个测试计划中分布逻辑。

拆卸:

  • 从未使用它,但我认为它主要用于清理系统(例如删除在测试期间创建的用户)

答案 1 :(得分:0)

一种特殊类型的ThreadGroup,可用于执行预测试/后测试操作。这些线程的行为与普通的Thread Group元素完全相同。 区别在于这些类型的线程在测试完成执行其常规线程组之前/之后执行。enter image description here

答案 2 :(得分:0)

纠正我,因为我可能错了,但是setUp线程不能用于存储变量以供在测试线程上使用(我可以看到)。我在setUp中使用的任何变量都是永远不可用的。但是,我发现如果我使用beanshell并将setUp线程中的变量转换为这样的属性 ${__setProperty(userToken, ${userToken})};

然后在每个测试线程上我直接使用属性,如:

${__property(userToken)}

或在我的线程的顶部我将属性转换回变量,如: vars.put("userToken","${__property(userToken)}")

然而,这似乎有点长,如果有一种方法可以在setUP中设置变量以便在每个线程上使用,那将会很棒。