jMeter - JMS 主题测试计划

构建 JMS 主题测试计划

现在让我们编写一个 JMeter 测试计划来测试 JMS 提供程序。我们将创建一个订阅者和一个发布者。我们将创建一个线程组,并将每个线程组设置为两次迭代

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

添加用户

现在创建一个线程组,如下所示 −

  • 右键单击测试计划

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

  • 将此线程组重命名为 JMS pub-sub user

线程组已添加

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

添加 JMS 订阅者和发布者

让我们看看如何添加订阅者和发布者 −

添加发布者

  • 通过选择添加 → 采样器 → 将采样器 JMS 发布者添加到发布者元素JMS Publisher。

  • 在树中选择 JMS Publisher 元素。

  • 编辑以下属性 −

属性 描述
Name Sample Publisher 树中显示的此元素的描述性名称。
If the JMS provider uses the jndi.properties file check the box 使用 jndi.properties。请注意,该文件必须位于类路径 − 上,例如通过更新 user.classpath JMeter 属性。如果未选择此选项,JMeter 将使用"JNDI 初始上下文工厂"和"提供程序 URL"字段来创建连接。
InitialContextFactory org apache activemq jndi Active MQInitial Context Factory 上下文工厂的名称。
Provider URL tcp://localhost:61616 jms 提供程序的 URL。
Connection Factory ConnectionFactory JMS 提供程序的 URL。
Destination dynamicTopics/MyStaticTopic1 消息主题的名称。适用于 ActiveMQ 动态主题(动态创建主题)。
Number of samples to aggregate 2 要聚合的样本数量。
Message source Textarea 从哪里获取消息 −

来自文件 − 表示所有样本都将读取和重用引用的文件。

来自文件夹的随机文件 − 表示将从指定的文件夹中选择一个随机文件,此文件夹必须包含扩展名为 .dat 的字节消息文件,或扩展名为 .txt 或 .obj 的对象或文本消息文件

文本区域 − 用于文本或对象消息的消息

Message type Text 文本、映射、对象消息或字节消息

其余属性保留默认值。以下屏幕截图显示了上述配置 −

JMS publisher sampler

添加订阅者

现在我们已经定义了用户,是时候定义他们将要执行的任务了。

  • 通过选择添加 → 采样器 → 将采样器 JMS 订阅者添加到订阅者元素JMS 订阅者。

  • 在树中选择 JMS 订阅者元素

  • 编辑以下属性 −

属性 描述
Name Sample Subscriber 树中显示的此元素的描述性名称。
If the JMS provider uses the jndi.properties file check the box 使用 jndi.properties。请注意,该文件必须位于类路径 − 上,例如通过更新 user.classpath JMeter 属性。如果未选择此选项,JMeter 将使用"JNDI 初始上下文工厂"和"提供程序 URL"字段来创建连接。
InitialContextFactory org apache activemq jndi Active MQInitial Context Factory 上下文工厂的名称。
Provider URL tcp://localhost:61616 JMS 提供者的 URL。
Connection Factory ConnectionFactory JMS 提供者的 URL。
Destination dynamicTopics/MyStaticTopic1 消息主题的名称。适用于 ActiveMQ 动态主题(动态创建主题)。
Read response Check Box 采样器应该读取响应。如果没有,则仅返回响应长度。
Timeout 2000 要应用的超时时间,以毫秒为单位。0=无。这是总体聚合超时时间,而不是每个样本的超时时间。

其余属性保留默认值。以下屏幕截图显示了上述配置 −

JMS 订阅者采样器

创建监听器

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

  • 选择线程组元素。

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

JMS Pub Sub Test Listener

保存并执行测试计划

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

验证输出

发布者的输出

JMS Publish Sub Test Output1

JMS Publish Sub Test Output2

订阅者的输出

JMS Publish Sub Test Output3

JMS Publish Sub Test Output4

JMS Publish Sub Test Output5

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

JMS Publish Sub Admin Console

jmeter_jms_test_plan.html