JMeter插件之 BlazeMeter's XMPP----测试Openfire等
JMeter也可以测试XMPP协议了,之前一直使用Tsung或者是直接写java代码结合Java request来进行,现在可以用BlazeMeter提供的插件来进行XMPP测试,无需过多编码。
首先,要在http://www.jmeter-plugins.org/ 下载BlazeMeter's XMPP set插件集,将压缩包解压后,就像为JMeter安装普通插件一样,配置好以后,重启JMeter,然后,打开JMeter以后,如下图所示:
在配置元件里,可以看到XMPP Connection和XMPP Sampler,表示插件安装成功。
相信使用过JDBC request的朋友不会陌生,我们在创建XMPP Sampler之前,首先要创建一个XMPP Connection,下面我们看一下这个元件要填写的参数的含义:
1、Server Address:
指的是部署XMPP服务的IP地址或者是可以访问的机器名
2、Port:
指的是the standard port for clients to connect to the server
3、Service Name:
指的是XMPP服务的域名,如果是openfire指的就是
图中所示的服务器名称,这个值就是配置时填写的domain名称,而不是部署XMPP服务的机器名称,所以大家一定要注意了,如果这个不正确或者不填的话,在登录时会出现:
这样的Error。
4、Transport:
这里有两个选项TCP和BOSH,是客户端与服务器端建立连接用的一种协议,我用的是TCP,另外一个BOSH目前试了一下请求没有成功,查了一下应该是另外一种机制,会继续研究一下。
然后,创建一个XMPP Sampler,
因为在这个采样器里面有很多设置项,图无法截全。在这个采样器里面,首先有一点要注意的是,所有的动作都是单选的,也就是说一个采样器只能进行一种动作,比如说:在XMPP Connection建立好以后,接下来第一个动作就是要跟服务器建立连接,然后,才可以登录,发消息等,那么,我们建立采样器时,就是第一个采样器的动作就只是Connect to Server,第二个采样器就是log in动作,第三个采样器就是send message。
因为不同的应用在通信时会有不同的处理,故其它逻辑利用Java代码或者Beanshell自行定义就好。