目录:

一、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

【JMeter4.0学习(四)】之JMeter对JMS性能测试脚本开发的更多相关文章

  1. 【JMeter4.0学习(二)】之搭建openLDAP在windows8.1上的安装配置以及JMeter对LDAP服务器的性能测试脚本开发

    目录: 概述 安装测试环境 安装过程 配置启动 配置搭建OpenLDAP 给数据库添加数据 测试查询刚刚插入的数据 客户端介绍 JMeter建立一个扩展LDAP服务器的性能测试脚本开发 附:LDAP学 ...

  2. 【JMeter4.0学习(三)】之SoapUI创建WebService接口模拟服务端以及JMeter对SOAP协议性能测试脚本开发

    目录: 创建WebService接口模拟服务端 下载SoapUI 新建MathUtil.wsdl文件 创建一个SOAP项目 接口模拟服务端配置以及启动 JMeter对SOAP协议性能测试脚本开发 [阐 ...

  3. 【JMeter4.0学习(十一)】之JMeter对(Mysql、Oracle)数据库性能测试脚本开发

    一.MySQL数据库链接: 注:下面所产生的问题一律参考详见:<[JMeter4.0]之遇到的问题总结(持续更新)>(包括Mysql.Orcale) 准备:引包,包路径一定要放对位置,参考 ...

  4. 【JMeter4.0学习(五)】JMeter对服务器监控测试脚本开发

    目录: 下载相关JMeter插件 服务器监控测试脚本开发 附:参考相关文档 本文主要来说一下如何通过JMeter插件来监控服务器CPU.内存.磁盘.网络等相关资源. 一.首先,需要下载相关JMeter ...

  5. 【JMeter4.0学习(七)】之配置元素

    目录 CSV Data Set Config HTTP Cookie管理器 HTTP信息头管理器 JDBC Connection Configuration 用户定义的变量 计数器 一.CSV Dat ...

  6. 【JMeter4.0学习(十)】之JMeter函数简单运用以及结合正则表达式提取器

    下面来简单的举个栗子: 首先,把函数和正则表达式提取器放在一块来介绍,如下所示: 1.结构完整展示,下面再一步一步创建添加: 2.添加线程组: 3.首先添加HTTP请求1 4.添加结果树后,运行后查看 ...

  7. 【JMeter4.0学习(九)】之定时器

    目录: 固定定时器 高斯随机定时器 附 一.固定定时器 1.添加线程组 2.添加固定定时器 3.添加HTTP请求 4.添加结果树以及运行  二.高斯随机定时器 1.添加线程组 2.添加高斯随机定时器 ...

  8. 【JMeter4.0学习(六)】之逻辑控制器说明

    主要demo例子在: 链接: https://pan.baidu.com/s/1OFdsrNG7PTOYQ8TdjiVtBQ 密码: tkd2 汇总参考文档:<Jmeter之逻辑控制器(Logi ...

  9. 【JMeter4.0学习(一)】之FTP性能测试脚本开发,并实现上传下载功能

    参考:<Jmeter常用脚本开发之FTP请求>感谢作者:rosa2015 一.首先,搭建FTP服务器,参考地址:<[FTP]之windows8.1上搭建FTP服务器方法> 二. ...

随机推荐

  1. [CP1804]最短路

    题目大意: 一个$n(n\le10^5)$个点的图,给定一个常数$c$,每对点$i,j$之间有权值为$(i\oplus j)\times c$的边.另有$m(m\le5\times10^5)$条指定权 ...

  2. bean装配--auto

    1,Dao package com.songyan.autoZhuangpei; public interface UserDao { public void say(); } package com ...

  3. 集合框架(04)HashMap

    集合Map的简单方法:该集合存储键值对,一对一对往里面存,而且要保证健的唯一性 1.添加 put(K key,V value) putAll(Map<? Extends k, ? extends ...

  4. MySQL 5.7.17 Group Replication 初始

    http://blog.csdn.net/mchdba/article/details/53957248

  5. linux命令行翻页

    在linux上面执行命令,若命令太多屏幕显示不完,通过Shift+pageup/pageDown来查看. putty连接linux后执行就不存在这个问题.

  6. Delphi CRC16校验算法实现(转)

    循环冗余码校验英文名称为Cyclical Redundancy Check,简称CRC.它是利用除法及余数的原理来作错误侦测(Error Detecting)的.实际应用时,发送装置计算出CRC值并随 ...

  7. HTML5的测试总结

    HTML5其实也是web的一种,所以基本的web测试的一些重点,HTML5上都要过一遍,不过也有其特殊之处. [需求设计测试] 需求是否合理.是否有更好的实现方法或者功能的遗漏,以及原型图测试,包括用 ...

  8. c++11 std::prev、std::next、std::advance与auto 使用

    auto 定义变量时放在变量前,无需知道具体变量类型,系统可自行推断类型,减少编程工作,特别是在模板使用时,使用更方便. 下面简单例子: auto a=; auto b='a'; auto s=&qu ...

  9. Java源码阅读HashMap

    1类签名与注释 public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cl ...

  10. ElasticSearch获取指定Field数据的Java方法

    ElasticSearch(ES)检索后需要结果时,可能通过source接口读出.但是这样的话,返回的结果会很多.在调用search方法时,我们可以添加addfield或addfields方法,仅仅读 ...