jMeter - JMS 点对点测试计划

构建 JMS 点对点测试计划

现在让我们编写一个 JMeter 测试计划来测试 JMS 点对点消息传递解决方案。测试设置是一个线程组,其中一个线程或用户通过请求队列分别发送 2 条消息。

让我们从 /home/manisha/apache-jmeter2.9/bin/jmeter.sh. 启动 JMeter。

添加用户

  • 创建线程组。

  • 右键单击测试计划节点。

  • 选择添加 → 线程(用户)→ 线程组。线程组添加到测试计划节点下。

  • 将此线程组重命名为 JMSTestPlan-PointtoPoint

Jmsptp Thread Group

我们将循环计数更改为 2。线程组的其余默认属性保留。这意味着一个线程组和一个线程或一个用户通过请求队列分别发送两条消息。

添加 JMS 点对点采样器

现在我们已经定义了用户,是时候定义他们将要执行的任务了。首先将采样器 JMS 点对点添加到点对点元素。

  • 选择添加 → 采样器 → JMS 点对点。

  • 在树中选择 JMS 点对点采样器元素。

对 JMS 点对点采样器元素进行了以下属性更改 −

属性 描述
QueueuConnectionFactory ConnectionFactory 这是活动 MQ 中的连接工厂的默认 JNDI 条目。
JNDI Name Request Queue Q.REQ JMeter 用于在连接工厂和队列之间建立连接的 JNDI 名称。
JNDI Name Receive Queue Q.REQ JMeter 的 JNDI 名称,用于在连接工厂和队列之间建立连接。我们使用相同的队列进行响应。
Communication Style Request Response 这意味着您至少需要一个在 JMeter 之外运行的服务,它将响应请求。此服务必须监听请求队列并向消息 .getJMSReplyTo() 引用的队列发送消息
Use Request message ID checked 您可以让 JMeter 使用消息 ID 请求(存款)来关联传入消息和恢复的消息。
Use Response message ID checked 您可以让 JMeter 使用消息标识符 Response(recovery) 来关联传入消息和恢复的消息。
Time(milliseconds) 2000 当 JMeter 收到消息时,如果未及时(此处为 2 秒)恢复任何内容,则使用此超时,然后该项目被标记为错误。
Content Testing point to point 这只是消息的内容。
InitialContextFactory

org.apache.activemq.jndi

ActiveMQInitial ContextFactory

Active MQ 的标准 InitialContextFactory
queue.Q.REQ example.A 队列的JNDI名称(Q.REQ)与ActiveMQ中队列的真实名称(example.A)的对应关系。
Provider URL tcp://localhost:61616 攻击 ActiveMQ 的地址和端口。

以下屏幕截图显示了上述配置 −

JMS Point to Point Sampler

创建监听器

现在添加监听器元素。此元素负责将 JMS 请求的所有结果存储在文件中并呈现数据的可视模型。

  • 选择线程组元素。

  • 通过选择添加 → 监听器 → 添加查看结果树监听器查看结果树。

JMS 点对点测试监听器

保存并执行测试计划

现在将上述测试计划保存为 jmsptp_test.jmx。使用 Run → 执行此测试计划启动选项。

验证输出

JMS PTP 测试输出 1

JMS PTP 测试输出 2

JMS PTP 测试输出 3

返回 ActiveMQ 的管理控制台。在这里我们可以看到队列中的消息状态。

JMS PTP 管理控制台

jmeter_jms_test_plan.html