基于jmeter的activemq的测试教程

时间:2024-04-10 10:50:08

前言

  • 在进行新架构相关服务的开发测试过程中,为了测试应用 , 需要经常进行MQ消息的发送 , 目前采用的MQ消息的发送是在MQ官方提供的Web页面上面进行的,但是在该页面上测试存在诸多不方便的地方,比如每次都要找到对应的队列,再找到对应的消息复制过去 , 若需要测试多个队列 , 这样进行频繁的切换会非常麻烦 , 为便于MQ的测试 , 本来我想写个工具去处理这个问题 , 后来发现原来Jmeter就可以胜任 , 因此有了这篇教程 , 送给有缘人

步骤

  1. 从官网下载Jmeter , 推荐下载5.0版本 , 目前最新版是5.1版本 , 但是这个版本不知道为什么 , 在我电脑上使用的时候无法进行MQ消息的发送 , 5.0版本下载链接: https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.0.zip

  2. 在部署ActiveMQ服务器的时候我们发现在其目录下会存在一个activemq-all-xxx.jar 的jar包,如下图所示基于jmeter的activemq的测试教程

  3. activemq-all-xxx.jar包复制到Jmeter的lib文件夹下面

  4. 启动Jmeter应用程序 , 启动脚本在 bin文件夹下,叫做jmeter.bat

  5. 在当前test plan下右键选择add-->Threads-->Thread Group

  6. 再在当前线程组下创建 JMS Point-to-Point 选中当前线程组,右键选择add-->Sampler-->JMS Point-to-Point

  7. 按照表格填写对应的内容,对应填写相关内容

    KEY value 备注
    QueueConnection Factory ConnectionFactory 队列连接工厂,默认值
    JNDI name Request queue Q.REQ JNDI请求队列,默认值
    Communication style request_only 仅进行请求发送
    Timeout 2000 超时时间,2s
    Content 发送的MQ消息内容 发送的消息内容
    Initial Context Factory org.apache.activemq.jndi.ActiveMQInitialContextFactory 初始化内容工厂
    JNDI Properties Name固定填写queue.Q.REQ,Value填写具体的队列名称
    Provider URL tcp://192.168.81.45:61616 MQ地址配置

    基于jmeter的activemq的测试教程
    基于jmeter的activemq的测试教程

  8. 右键线程组,选择add-->listener-->View Reuslts Tree 创建视图结果树

  9. 点击运行按钮进行消息队列的发送,可在视图结果树中查看消息发送状态,若为绿色,则发送成功,为红色,发送失败基于jmeter的activemq的测试教程

  10. 可直接对该线程组进行复制粘贴以配置其他消息, 另外,需注意,Jmeter在运行的时候会运行所有的线程组, 因此 , 若不需发送消息的线程组,对其右键,选择Disable 关闭,只保留需要发送消息的线程组, 点击运行发送消息基于jmeter的activemq的测试教程