三、添加activemq-all-5.2.0.jar包到Jmeter的lib庫(kù)
將ACTIVE_HOME/activemq-all-5.2.0.jar文件復(fù)制到JMETER_HOME/lib目錄中,jmeter在測(cè)試jms的時(shí)候會(huì)使用到activemq提供的jms的實(shí)現(xiàn)類,這些類并沒有隨jmeter一起分發(fā),需要把這些類添加到j(luò)meter的classpath中。
四、啟動(dòng)Jmeter測(cè)試JMS
添加線程組及JMS的sampler,有三種方式的JMS消息
1、Point-to-Point
填寫參數(shù)如下:
QueueConnection Factory:connectionFactory
JNDI name Request queue:MyQueue
JNDI name Receive queue:MyQueue
Content:this is a test
Initial Context Factory:org.apache.activemq.jndi.ActiveMQInitialContextFactory
ProviderURL:tcp://yourIP:61616
2、Publisher
基本值同Point-to-Point,不同點(diǎn)在于Destination,填寫JMS的topic目的地
若在ActiveMQ中Topics的名字為example.MyTopic
則jndi.properties文件中定義的topic如下:
topic.MyTopic = example.MyTopic
則Destination填寫topic.后面的MyTopic
3、Subscriber
基本值同Publisher,不同在于可以根據(jù)需要填寫Client ID,JMS Selector進(jìn)行消息過(guò)濾
報(bào)錯(cuò):Response message: javax.naming.NameNotFoundException:***
原因Destination中填寫的錯(cuò)了,以為填寫ActiveMQ中實(shí)際的Topic名
其實(shí)在jndi.properties文件中已經(jīng)實(shí)例化了,topic.MyTopic = example.MyTopic,這里example.MyTopic是ActiveMQ中的Topic名
因此實(shí)際填寫時(shí)是填寫topic.后的MyTopic