【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测试计划(点到点、主题)》作者:易百教程
《ActiveMQ 控制台使用方法》作者:有 prepare , No out
【JMeter4.0学习(四)】之JMeter对JMS性能测试脚本开发的更多相关文章
- 【JMeter4.0学习(二)】之搭建openLDAP在windows8.1上的安装配置以及JMeter对LDAP服务器的性能测试脚本开发
目录: 概述 安装测试环境 安装过程 配置启动 配置搭建OpenLDAP 给数据库添加数据 测试查询刚刚插入的数据 客户端介绍 JMeter建立一个扩展LDAP服务器的性能测试脚本开发 附:LDAP学 ...
- 【JMeter4.0学习(三)】之SoapUI创建WebService接口模拟服务端以及JMeter对SOAP协议性能测试脚本开发
目录: 创建WebService接口模拟服务端 下载SoapUI 新建MathUtil.wsdl文件 创建一个SOAP项目 接口模拟服务端配置以及启动 JMeter对SOAP协议性能测试脚本开发 [阐 ...
- 【JMeter4.0学习(十一)】之JMeter对(Mysql、Oracle)数据库性能测试脚本开发
一.MySQL数据库链接: 注:下面所产生的问题一律参考详见:<[JMeter4.0]之遇到的问题总结(持续更新)>(包括Mysql.Orcale) 准备:引包,包路径一定要放对位置,参考 ...
- 【JMeter4.0学习(五)】JMeter对服务器监控测试脚本开发
目录: 下载相关JMeter插件 服务器监控测试脚本开发 附:参考相关文档 本文主要来说一下如何通过JMeter插件来监控服务器CPU.内存.磁盘.网络等相关资源. 一.首先,需要下载相关JMeter ...
- 【JMeter4.0学习(七)】之配置元素
目录 CSV Data Set Config HTTP Cookie管理器 HTTP信息头管理器 JDBC Connection Configuration 用户定义的变量 计数器 一.CSV Dat ...
- 【JMeter4.0学习(十)】之JMeter函数简单运用以及结合正则表达式提取器
下面来简单的举个栗子: 首先,把函数和正则表达式提取器放在一块来介绍,如下所示: 1.结构完整展示,下面再一步一步创建添加: 2.添加线程组: 3.首先添加HTTP请求1 4.添加结果树后,运行后查看 ...
- 【JMeter4.0学习(九)】之定时器
目录: 固定定时器 高斯随机定时器 附 一.固定定时器 1.添加线程组 2.添加固定定时器 3.添加HTTP请求 4.添加结果树以及运行 二.高斯随机定时器 1.添加线程组 2.添加高斯随机定时器 ...
- 【JMeter4.0学习(六)】之逻辑控制器说明
主要demo例子在: 链接: https://pan.baidu.com/s/1OFdsrNG7PTOYQ8TdjiVtBQ 密码: tkd2 汇总参考文档:<Jmeter之逻辑控制器(Logi ...
- 【JMeter4.0学习(一)】之FTP性能测试脚本开发,并实现上传下载功能
参考:<Jmeter常用脚本开发之FTP请求>感谢作者:rosa2015 一.首先,搭建FTP服务器,参考地址:<[FTP]之windows8.1上搭建FTP服务器方法> 二. ...
随机推荐
- IOS调用WCF提供的服务方法,但是方法的参数是WCF那边自定义的对象,这样有办法调用么,如果可以IOS应该怎么传参呢?请问有了解的么,
最近做一个项目后端使用WCF接收Android手机拍照并带其它参数保存到服务器里:刚好把最近学习的WCF利用上,本以为是个比较简单的功能应该很好实现,没想到其中碰到不少问题,在网上搜索很久一直没有想到 ...
- uVa 12563 Jin Ge Jin Qu
分析可知,虽然t<109,但是总曲目时间大于t,实际上t不会超过180*n+678.此问题涉及到两个目标信息,首先要求曲目数量最多,在此基础上要求所唱的时间尽量长.可以定义 状态dp[i][j] ...
- 设计模式之工厂模式之简单工厂(php实现)
github源码地址: git@github.com:ZQCard/design_pattern.git 1.简单工厂模式 特点:将调用者与创建者分离,调用者直接向工厂请求,减少代码的耦合.提高系统的 ...
- docker运行mysql
http://blog.csdn.net/u011492260/article/details/77970445 第一步: 安装Docker:首先到docker官网下载适合自己电脑当前系统的版本,并安 ...
- apache只记录指定URI的日志
我的需求是,把类似请求 www.aaa.com/aaa/... 这样的请求才记录日志.在httpd.conf 或者 相关的虚拟主机配置文件中添加SetEnvIf Request_URI "^ ...
- Ubuntu系统日志
一.指定系统日志路径到: /var/log/messages 1.默认系统日志 root@HDController:~# tail -1000 /var/log/syslog Oct 20 06:2 ...
- ZeroMQ使用学习记录(转)
ZMQ简介 ZMQ(ØMQ.ZeroMQ, 0MQ)看起来像是一套嵌入式的网络链接库,但工作起来更像是一个并发式的框架.它提供的套接字可以在多种协议中传输消息,如线程间.进程间.TCP.广播等.你可以 ...
- .Net普通三层->工厂模式->线程内唯一+单元工作模式->WebService分布式三层
在软件世界分层的思想无处不在 主要是为了提高软件系统的维护性,扩展性,复用性和解耦等 软件的三层构架是一种最基本的分层思想的体现 结构图大体如下: 如此一来,开发人员可以只关注其中一层,而无需关心下一 ...
- Android之短信验证码
我们今天所使用的方案仅仅是android手机设备集成短信验证码功能的方案之中的一个. 我们所採用的方案是使用聚合数据的短信验证sdk. 程序的界面例如以下所看到的: 实现步骤: 1.到聚合数据官网上申 ...
- mysql中show processlist过滤和杀死线程
select * from information_schema.processlist where HOST LIKE '%192.168.1.8%'; kill ID列