【JMeter4.0(四)】之JMeter对JMS性能测试脚本开发

目录:

 

 

 

一、ActiveMQ官方下载地址http://activemq.apache.org/download.html

下载完成后,解压到指定文件夹下,然后启动服务:

在CMD中先定位到bin文件夹下,再输入:activemq start

打开浏览器验证服务启动成功,输入ActiveMQ的管理控制台地址:http://localhost:8161/admin/index.jsp

(注:填写用户名密码,用户名密码信息保存在conf/jetty-realm.properties文件中)

【参照文章】:《ActiveMQ 用户名密码设置》作者:MIC2016

 

如果登录后显示下图,证明服务启动成功!

 

 最后,复制解压路径下的activemq-all-x.x.x.jar(XXX的版本而定)从ActiveMQ的解压目录   /apache-jmeter-2.9/lib.

 

二、JMeter JMS点到点测试计划

测试计划结构:线程组、JMS Point-to-Point、监听器等

主要说一下“JMS Point-to-Point”,其他的之前已经说过,在这里就不一一陈述了。

1、JMS Point-to-Point配置

打开之后,进行以下配置:

属性 描述
JMS Resources
QueueuConnectionFactory ConnectionFactory 这是默认JNDI条目内ActiveMQ连接工厂。
JNDI Name Request Queue Q.REQ JMeter JNDI名称使连接工厂和队列之间的连接。
JNDI Name Receive Queue Q.REQ JMeter JNDI名称使连接工厂和队列之间的连接。我们都使用相同的响应队列。
Message properties
Communication Style

Request Response

(注:JMeter4.0中为:选择request_reply)

这意味着至少需要服务运行JMeter外,将响应请求。此服务必须侦听请求队列,并发送消息引用的队列由message.getJMSReplyTo()
Use Request message ID checked 可以留下JMeter的使用消息ID请求传入的消息并回收之间的相关性(押金)。
Use Response message ID checked 可以留下使用JMeter的消息标识符响应(恢复)传入的消息和恢复之间的相关性。
Time(milliseconds) 2000(非必填) 使用此超时的消息时,如果没有收到JMeter的恢复时间(这里2秒),那么该项目将被标记错误。
Content test 该消息是测试内容。
JMS Properties   对Active MQ而言并不需要这项
JNDI Properties
InitialContextFactory

org.apache.activemq.jndi

.ActiveMQInitialContextFactory

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2、点击运行启动

 

最后返回ActiveMQ的管理控制台

 

三、JMeter对JMS主题测试计划

1、添加发布

添加采样JMS发布到发布元素 (Add > Sampler > JMS Publisher).

 设置JMS Publisher的值:

属性 描述
If the JMS provider uses the jndi.properties file check the box 使用jndi.properties。请注意该文件必须在classpath - 例如通过更新user.classpath JMeter的属性。如果这个选项没有被选中,JMeter使用“JNDI初始上下文工厂”和“提供URL”字段创建连接。
InitialContextFactory

org.apache.activemq.jndi.ActiveMQInitial

ContextFactory

Name of the context factory.
Provider URL tcp://localhost:61616 JMS提供者的URL。
Connection Factory ConnectionFactory 连接工厂。
Destination dynamicTopics/MyStaticTopic1 消息主题的名称。对于ActiveMQ的动态主题(动态创建主题)。
Number of samples to aggregate 2 聚集的样品数量。
Message source Message
在哪里获得消息:
从文件:表示引用的文件,将所有样品读取和重用
随机文件从指定的文件夹如下:指从指定的文件夹下面,将选择一个随机文件,这个文件夹必须包含两种副档名为.dat字节的消息,或带扩展名的文件.txt或.obj对象或文本消息。
文本区域使用文本或对象消息:消息
Message type Text 文字,地图,对象消息或字节消息

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2、添加订阅服务

增加采样JMS订阅服务器上认购元素 (Add > Sampler > JMS Subscriber).

 设置JMS Subscriber的值:

属性 描述
If the JMS provider uses the jndi.properties file check the box 使用jndi.properties。请注意该文件必须在classpath - 例如通过更新user.classpath JMeter的属性。如果这个选项没有被选中,JMeter使用“JNDI初始上下文工厂”和“提供URL”字段创建连接。
InitialContextFactory

org.apache.activemq.jndi.ActiveMQInitial

ContextFactory

Name of the context factory.
Provider URL tcp://localhost:61616 JMS提供者的URL。
Connection Factory ConnectionFactory 连接工厂。
Destination dynamicTopics/MyStaticTopic1 消息主题的名称。对于ActiveMQ的动态主题(动态创建主题)。
Read response Check Box 采样器读取响应。如果没有,只有响应的长度将被返回。
Timeout 2000 指定的超时时间,以毫秒为单位。 0=null。这是整体的总超时,而不是每个样品。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3、添加监听器并运行

JMS Publisher结果树:

JMS Subscriber结果树:

发布的值响应到了订阅服务中:

最后返回查看ActiveMQ的管理控制台

主题:

订阅:

 

 

附:相关学习地址

使用Jmeter测试JMS》作者:hunterno4的专栏

JMeter之JMS接口测试》作者:曹洪双

jMeter JMS测试计划(点到点、主题)》作者:易百教程

官方学习文档(JMS_Point-to-Point)

ActiveMQ 控制台使用方法》作者:有 prepare , No out

 

posted @   Owen_ET  阅读(1409)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
  1. 1 イエスタデイ(翻自 Official髭男dism) 茶泡饭,春茶,kobasolo
  2. 2 模様 (TV size ver.) Ivy to Fraudulent Game
  3. 3 河口恭吾
  4. 4 愛してる 高鈴
  5. 5 一生所爱 卢冠廷,莫文蔚
  6. 6 世间美好与你环环相扣 柏松
  7. 7 理想三旬 陈鸿宇
  8. 8 不浪漫罪名 王杰
  9. 9 樱花树下 张敬轩
  10. 10 因为你在 达闻西乐队,福禄寿FloruitShow
  11. 11 悬溺 葛东琪
世间美好与你环环相扣 - 柏松
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 尹初七

作曲 : 柏松

编曲 : 彭圣杰

偏偏秉烛夜游

偏偏秉烛夜游

午夜星辰 似奔走之友

爱你每个结痂伤口

酿成的陈年烈酒

入喉尚算可口

入喉尚算可口

怎么泪水 还偶尔失守

邀你细看心中缺口

裂缝中留存 温柔

此时已莺飞草长 爱的人正在路上

此时已莺飞草长 爱的人正在路上

我知他风雨兼程 途经日暮不赏

穿越人海 只为与你相拥

此刻已皓月当空 爱的人手捧星光

我知他乘风破浪 去了黑暗一趟

感同身受 给你救赎热望

知道你不能 还要你感受

知道你不能 还要你感受

让星光加了一点彩虹

让樱花偷偷 吻你额头

让世间美好 与你环环相扣

此时已莺飞草长 爱的人正在路上

此时已莺飞草长 爱的人正在路上

我知他风雨兼程 途经日暮不赏

穿越人海 只为与你相拥

此刻已皓月当空 爱的人手捧星光

我知他乘风破浪 去了黑暗一趟

感同身受 给你救赎热望

此时已莺飞草长 爱的人正在路上

此时已莺飞草长 爱的人正在路上

我知他风雨兼程 途经日暮不赏

穿越人海 只为与你相拥

此刻已皓月当空 爱的人手捧星光

我知他乘风破浪 去了黑暗一趟

感同身受 给你救赎热望

知道你不能 还要你感受

知道你不能 还要你感受

让星光加了一点彩虹

当樱花开的纷纷扬扬

当世间美好 与你环环相扣

特别鸣谢:槿葵,我们的海报制作妹妹。

原唱:柏松

吉他:柏松

和声:柏松

录音:柏松

混音:张强

点击右上角即可分享
微信分享提示