Jmeter创建一个 JMS 主题的测试计划
新建一个 JMS 主题的测试计划
JMS 需要下载一些可选的jar 文件。详细信息请参阅 第一章:新手入门。在本章节,将学习如何创建测试计划来测试JMS提供程序。创建5个订阅者和1个发布者。创建2个线程组并且设置每个线程组迭代10次。消息总数是(6个线程)x (1 个消息)x(重复10次)= 60 个消息。为了构建测试计划将使用以下元素:线程组 , JMS 发布者, JMS 订阅者, 和 图结果。
关于JMS的一般注意事项:目前有两种 JMS 采样器(samplers)。一种使用 JMS 主题(topics),另一种使用队列(queues)。主题消息通常被称为发布/订阅消息。主题消息传递通常用于消息由生产者发布并由多个订阅者消费的情况。队列消息传递通常用于发件人期望响应的事务。消息系统与普通的HTTP请求完全不同。在HTTP中,一个用户发送一个请求并得到一个响应。消息系统可以通过同步和异步模式工作。JMS采样器需要JMS实现的jar文件(由于JMeter不提供JMS实现的jar,需要下载后放置lib库); 例如,来自Apache ActiveMQ。请参阅这里 查看 ActiveMQ 提供的 jar 列表。
1 添加用户
第一步是添加一个线程组元素。线程组告诉JMeter想要模拟的用户数量,发送请求的频率以及发送请求的数量。
添加线程组元素,首先选择测试计划,单击鼠标右键获取添加菜单,然后选择 添加 → 线程组。此时可以在测试计划下面看到线程组元素,如果不能,可以通过在测试计划元素上单击“展开”测试计划树。
接下来,你需要修改默认属性。如果尚未选择树中的线程组元素,请先选择。此时可以看到JMeter窗口右侧的线程组控制面板

首先为我们的线程组提供一个更具描述性的名称。在名称字段输入: Subscribers 。
接下来,将用户(称为线程)的数量增加到 5。
在下一个字段 Ramp-Up Period 中,将该值设置为 0 秒。这个属性告诉JMeter启动每个用户之间要延迟多久。例如,如果输入一个5秒的渐变周期,JMeter将在5秒钟内完成所有用户的启动。所以,如果我们有5个用户和一个5秒钟的Ramp-Up Period值,那么用户启动之间的延迟将是1秒(5个用户/ 5秒= 1个用户每秒)。如果将该值设置为0,则JMeter将立即启动所有用户。
清除循环计数字段标记为 “永远” 的复选框,并在此字段中输入值 10 。这个属性告诉JMeter重复测试的次数。如果输入循环计数值0,那么JMeter将只运行一次测试。如果要让JMeter反复运行测试计划,请勾选 永远 复选框。
重复该过程并添加另一个线程组。对于第二个线程组,在名称字段中输入:Publisher,将线程数设置为1,迭代设置为10。
在大多数应用程序中,您必须手动接受在控制面板中所做的更改。但是,在JMeter中,控制面板自动接受所做的更改。如果更改元素的名称,则在离开当前控制面板后使用新文本更新树(例如,选择另一个树元素时)。
2 增加JMS订阅者和发布者
确保需要的 jar 文件在JMeter的lib目录。如果不是,请关闭JMeter,将jar文件复制到对应的目录并重新启动JMeter。
首先添加 JMS Subscriber取样器到 Subscriber 线程组(添加 → Sampler → JMS Subscriber)。然后选择树中的JMS订阅者元素编辑如下参数:
1.修改名称字段值为:”Sample Subscriber“
2.如果 JMS 提供使用 jndi.properties 文件,则选中该框
3.在Initial Context Factory字段输入InitialContextFactory 类,例如:使用ActiveMQ 5.4,值为 “org.apache.activemq.jndi.ActiveMQInitialContextFactory“
4.在Provider URL字段输入提供程序URL。如果存在的话,是JNDI服务器的URL。例如:在本地机器使用默认端口的ActiveMQ 5.4 ,URL值是”tcp://localhost:61616“
5.在Connection Factory字段输入connection factory的名称。有关信息请参照JMS提供的官方文档。对于ActiveMQ,默认值是”ConnectionFactory“
6.在Destination字段输入消息主题的名称。对于ActiveMQ 动态主题(动态创建主题),示例值为”dynamicTopics/MyStaticTopic1“
备注: Setup 选择At Startup 意味着JMeter 从测试开始监听此字段配置的消息主题而没有更改名称的可能。Setup 选择 Each sample意味着JMeter在每个JMS订阅者采样器运行前重新开始监听,此配置允许Destination字段值是变量。
7.如果JMS提供程序需要身份认证,选择“required”并输入用户名和密码。例如: Orion JMS 需要身份认证,但是ActiveMQ和MQSeries不需要
8.在 Number of samples to aggregate 字段输入 10。通过采集器聚合消息,出于性能方面的考虑,小消息能够更快速的到达 。如果采集器不能聚合消息,JMeter不能够继续运行
9.如果想要读取响应消息,选中Read Response框
10.订阅者有两种客户端实现,如果其中一个客户端选项使得JMS 提供程序产生僵尸进程,则选中另一个

接下来添加 JMSPublisher 取样器到 Publisher 线程组(添加 → Sampler → JMS Publisher)。然后选择树中的JMS发布者元素编辑如下参数:
1.修改名称字段值为:”Sample Publisher“
2.如果JMS 提供使用 jndi.properties 文件,则选中该框
3.在Initial Context Factory字段输入InitialContextFactory 类,例如:使用ActiveMQ 5.4,值为 “org.apache.activemq.jndi.ActiveMQInitialContextFactory“
4.在Provider URL字段输入提供程序URL。如果存在的话,是JNDI服务器的URL。例如:在本地机器使用默认端口的ActiveMQ 5.4 ,URL值是”tcp://localhost:61616“
5.在Connection Factory字段输入connection factory的名称。有关信息请参照JMS提供的官方文档。对于ActiveMQ,默认值是”ConnectionFactory“
6.在Destination字段输入消息主题的名称。对于ActiveMQ 动态主题(动态创建主题),示例值为”dynamicTopics/MyStaticTopic1“
备注: Setup 选择At Startup 意味着JMeter 从测试开始监听此字段配置的消息主题而没有更改名称的可能。Setup 选择 Each sample意味着JMeter在每个JMS发布者采样器运行前重新开始监听,此配置允许Destination字段值是变量。
7.如果JMS提供程序需要身份认证,选择“required”并输入用户名和密码。例如: Orion JMS 需要身份认证,但是ActiveMQ和MQSeries不需要
8.在 Number of samples to aggregate 字段输入 10。通过采集器聚合消息,出于性能方面的考虑,小消息能够更快速的到达 。如果采集器不能聚合消息,JMeter不能够继续运行
9.选择合适的配置生成发布的消息。如果希望随机的选择消息,则将消息放置在目录中,并且 通过浏览选择目录
10.选择消息类型。如果消息是object类型或者映射消息,确保消息正确生成

3 增加测试结果监听器
需要添加到测试计划的最后一个元素是一个 监听器。这个元素负责将所有的HTTP请求结果存储在一个文件中,并呈现数据的可视化模型。
选择 测试计划 元素并添加一个 图形结果监听器(添加 → 监听器 → 图形结果)。接下来,需要指定输出文件的目录和文件名。可以将其输入到文件名字段中,也可以选择浏览按钮并浏览到目录,然后输入文件名。

Jmeter创建一个 JMS 主题的测试计划的更多相关文章
- jmeter 建立一个JMS主题测试计划
创建两个线程组和组 每一个到10迭代. 总消息线程(6)x(1消息) (重复10次)= 60消息. 建立测试计划,您将使用 以下元素: 线程组 , JMS的出版商 , JMS用户 , 图结果 . 一般 ...
- Jmeter创建一个点对点的 JMS 测试计划
创建一个点对点的 JMS 测试计划 确保所需的jar文件位于JMeter lib目录中. 如果没有,关闭JMeter,复制jar文件并重新启动JMeter. 参见详细教程 在本节中,将学习如何创建测试 ...
- jmeter 建立一个JMS点对点测试计划
确保所需的jar文件在JMeter的 自由 目录中. 如果他们不是,关闭JMeter, 重启JMeter复制jar文件. 看到 开始 获取详细信息. 测试的设置是1与5线程发送4 thread ...
- jmeter 建立一个网络服务的测试计划
如何创建一个 测试计划 测试一个网络服务. 你会 创建5个用户发送请求到一页. 同时,你会告诉用户运行测试两次. 的总数 请求用户请求(5)x(1)x(重复2次)= 10 HTTP请求. 来 建立测试 ...
- 使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
转自:http://www.cnblogs.com/qianyiliushang/p/4348584.html 准备工作: 安装JDK,推荐使用1.7以上版本,并设置JAVA_HOME 下载Jmete ...
- 转: 使用Jmeter创建ActiveMQ JMS POINT TO POINT请求,环境搭建、请求创建、插件安装、监听服务器资源等
转自:http://www.cnblogs.com/qianyiliushang/p/4348584.html 准备工作: 安装JDK,推荐使用1.7以上版本,并设置JAVA_HOME 下载Jmete ...
- Jmeter创建一个web测试计划
1. 下载Jmeter 下载地址:http://jmeter.apache.org/download_jmeter.cgi 下载后解压到你想“安装”的路径下,比如: D:\Program Files ...
- Jmeter创建一个http请求
1.点击'Test Plan'为测试计划命名为"创建用户接口" 2.新建一个[线程组],在[创建用户接口]处点击右键,选择[添加]-->[Threads(Users)]--& ...
- Jmeter创建一个简单的http接口用例
1.新建线程组 添加->Threads(Users)->线程组 线程组用来模拟用户进程. 2.添加http信息头管理器 添加->配置元件->http信息头管理器 Systemi ...
随机推荐
- django设置cookie和session
1 设置cookie 本例中应用名称为cookie 模型model from django.db import models from django.db import models class Us ...
- Oracle索引技术研究
Oracle索引类型 B树索引 特定类型索引 确定索引列 主键和唯一键值列的索引 外键索引 其他合适的索引列 B树索引 B树索引算法 B树是指B-tree(Balanced Tree),B树的存在是为 ...
- solr特点八:Spatial(空间搜索)
前言 在美团CRM系统中,搜索商家的效率与公司的销售额息息相关,为了让BD们更便捷又直观地去搜索商家,美团CRM技术团队基于Solr提供了空间搜索功能,其中移动端周边商家搜索和PC端的地图模式搜索功能 ...
- Docker 入门笔记
Docker 可以理解为一个轻量化的虚拟机, 启动速度快,本身占的资源小 [重要], 容器里是不能保存数据的,容器只要一停止, 所有的数据都会丢失,所以如果重要的数据, 都需要通过配制,把数据保存在 ...
- c# 多线程线程池基础
线程池的作用 在上一篇中我们了解了创建和销毁线程是一个昂贵的操作,要耗费大量的时间,太多的线程会浪费内存资源,当线程数量操作计算机CPU的数量后操作系统必须调度可运行的线程并执行上下文切 ...
- .NetCore分布式部署中的DataProtection密钥安全性
在.NetCore中默认使用DataProtection来保护数据,例如Cooike等.一般情况下DataProtection生成的密钥会被加密后存储,例如默认的文件存储 可以看到使用了Windows ...
- 【cocos2d-x 手游研发小技巧(4)与Android混编实现换“头像图片”】
cocos2dx在android平台上的游戏开发中往往会遇到一些混编需求,如: 比方有的社区类游戏需要用到更换玩家的“头像”操作,其实就是调用android servers服务里面的本地图片,以及选取 ...
- sql server中的 trimtrailingblanks
使用sp_help 查出 发现有个这个属性, 如何修改呢? SET ANSI_PADDING ONAlter Table Sys_users_History Alter column PveSit ...
- [bzoj4009] [HNOI2015]接水果 整体二分+扫描线+dfs序+树状数组
Description 风见幽香非常喜欢玩一个叫做 osu!的游戏,其中她最喜欢玩的模式就是接水果. 由于她已经DT FC 了The big black, 她觉得这个游戏太简单了,于是发明了一个更 加 ...
- VIO的Bundle Adjustment推导
IMU模型和运动积分 $R_{\tiny{WB}} \left( t +\Delta{t} \right) = R_{\tiny{WB}} \left( t \right) Exp\left( \in ...