步骤4(a):通过GUI客户端启动JMeter测试
现在轮到启动JMeter GUI客户端了。在MS-Windows环境下运行"bin/jmeter.bat"脚本,在UNIX环境下运行"bin/jmeter"脚本。测试人员会发现在运行(Run)菜单下,包含两个子菜单"Remote Start"和"Remote Stop",如图11-4所示。这两个子菜单中包含测试人员在属性文件中设置的JMeter远程服务器IP地址。此刻,请使用远程启动和停止来代替普通的JMeter启动和停止。
图11-4 运行菜单
步骤4(b):通过非GUI客户端启动JMeter测试
还有另外一种方法,测试人员可以通过非GUI客户端来启动远程服务器。命令如下:
jmeter -n -t script.jmx -r
或者:
jmeter -n -t script.jmx -R server1,server2...
其他标志可能也有用。
-Gproperty=value:在所有JMeter远程服务器中定义一个属性(可以多次出现)
-Z:在测试结束后退出远程服务器。
第一个例子会启动定义在JMeter属性remote_hosts中的远程服务器;而第二个例子会先定义远程服务器列表,接着启动它们。命令行客户端会在所有服务器停止后退出。
1.手动配置JMeter远程测试
在某些情况下,jmeter-server脚本不能正常工作(如果测试人员使用的操作系统不在JMeter开发者预期的范围内)。下面介绍如何启动JMeter远程服务器(对应上面的步骤2),其中包含了更多人工操作。
步骤2(a):启动RMI注册
从JMeter 2.3.1开始,JMeter远程服务器会自己启动RMI注册,因此这里的内容不适用于普通情况。如果要采用历史版本的操作方法,首先在JMeter远程服务器上定义JMeter属性server.rmi.create=false,并遵循如下指南。
JMeter使用Remote Method Invocation(RMI)作为远程通信机制。因此,测试人员需要用到JDK "bin"目录中的RMI注册程序(名为"rRmiregistry")。在运行Rmiregistry之前,请确保如下jar存在于测试人员的系统claspath中:
JMETER_HOME/lib/ext/ApacheJMeter_core.jar。
JMETER_HOME/lib/jorphan.jar。
JMETER_HOME/lib/logkit-1.2.jar。
注册程序需要访问特定JMeter类。运行Rmiregistry无须参数。默认情况下应用程序会监听端口1099。
步骤2(b):启动JMeter远程服务器
一旦RMI注册程序运行起来,就启动JMeter远程服务器。JMeter启动脚本需携带"-s"选项。
步骤3和步骤4同上面的介绍。
2.一些小技巧
JMeter/RMI要求建立一个从客户端到远程服务器的连接。这就会用到测试人员所选择的端口号,默认值是1099。JMeter/RMI还要求建立一个反向连接,目的是从远程服务器向客户端返回测试采样结果。这就会用到一个更高数字的端口号。如果在JMeter客户端与JMeter远程服务器之间存在任何防火墙或者网络过滤器,那么测试人员就需要确保它们已经被正确配置,并允许相关连接通信。如果有必要,请使用监听软件来观察通信的过程。
如果JMeter运行在Suse Linux上,下面这些技巧对测试人员可能会有帮助。默认的安装可能会启动防火墙。在这种情况下,远程测试将无法正常工作。如果测试人员发现连接被拒绝后,可以通过下面的选项打开debugging。从JMeter 2.3.1版本开始,RMI注册由JMeter远程服务器启动;不过相关选项依然可以通过JMeter命令行传递。例如,"jmeter -s -Dsun.rmi.loader.logLevel=verbose"(省略了-J前缀)。另外这些属性还可以被定义在system.properties文件中。
解决的方法是从etc/hosts中删除对127.0.0.1和127.0.0.2的回送(Loopback)。 当127.0.0.2的回送无效时,jmeter-server将无法连接到Rmiregistry。
替换:
`dirname $0`/jmeter -s "$@"
为:
HOST="-Djava.rmi.server.hostname=[computer_name][computer_domain]
-Djava.security.policy=`dirname $0`/[policy_file]"
`dirname $0`/jmeter $HOST -s "$@"
版权声明:本文出自 iseedeadpeople 的51Testing软件测试博客:http://www.51testing.com/?291148
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。
相关文章: