JMeter Linux下执行测试

JMeter在本机上运行压测脚本时,一般会有两个瓶颈:

网络:本机与服务器之间的网络开销,会严重影响服务的性能表现。而且,本机与服务器一般不在同一个网段,网络瓶颈会更加明显。
本机性能:工作所用的笔记本,其性能很难与linux系统服务器的性能相比。而且,在Windows端运行的JMeter相比于Linux端的no-gui模式,本身性能也会差一些。另外,压测对本机的占用,会影响我们其他工作的开展。
基于以上两点考虑,将压测脚本部署到Linux服务器上运行,是一个很好的选择。在实际的性能测试中,一般会专门申请一台CPU、内存、磁盘指标都较好的linux服务器作为压测机器。

1 环境配置

  • 版本情况:Linux版本为Centos7,JMeter使用版本为3.3,JDK版本为1.8。
  • JDK配置:

    1、将tar.gz格式的JDK安装包通过xshell5上传到/opt目录;
    2、将安装包解压;
    3、环境变量设置:vi /etc/profile,在文件最后面添加下面一段内容,保存后退出:
    export JAVA_HOME=/opt/jdk1.8.0_131
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    4、source /etc/profile使配置修改生效;
    5、验证:输入java –version,出现以下信息,说明JDK安装配置完毕;

  •  注意事项:安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息:

     1、java version "1.6.0"
     2、OpenJDK  Runtime Environment (build 1.6.0-b09)
     3、OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)
     最好还是先卸载掉openjdk,在安装sun公司的jdk
    1.先查看 rpm -qa | grep java,显示如下信息:

     java-1.4.2-gcj-compat-1.2.2.0-40jpp.115
     java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

    2.执行下列命令,删除原有JDK:

    rpm -e --nodeps java-1.4.2-gcj-compat-1.2.2.0-40jpp.115
    rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

    3.如果出现“找不到openjdk source”,使用下列命令进行删除:

    yum -y remove java java-1.4.2-gcj-compat-1.2.2.0-40jpp.115
    yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

    JMeter安装
    JMeter在linux系统中的安装十分简单:

        1、将Jmeter安装包通过xshell导入/usr/local目录;
        2、将Jmeter安装包解压缩:tar –zxvf apache-jmeter-3.3.tgz
        3、赋予权限:chmod -R 777 apache-jmeter-3.3
        4、配置环境变量:vi /etc/profile,在末尾输入:export PATH=/usr/local/apache-jmeter-3.3/bin/:$PATH,保存退出;
        5、source /etc/profile 使配置生效;
        6、检验jmeter是否可以运行:jmeter –v,出现以下信息,说明Jmeter安装配置成功;

 

no-gui模式运行脚本
一、操作步骤

1、在windows下Jmeter里编写完成脚本,脚本名称:test.jmx;

2、将脚本上传到Linux系统指定目录中,例如:/opt/local/jmeterScripts

3、执行以下命令:jmeter -n -t /usr/local/jmeterScripts/test.jmx -l /usr/local/testResult/test.jtl

-n表示以nogui方式运行测试计划
-t表示测试计划,后面跟测试计划名称
-l表示测试结果,后面跟测试结果文件名称

当控制台出现上图,说明脚本成功运行。

出于方便考虑,将启动命令写入脚本start.sh中:

#!/bin/bash
jmeter -n -t /usr/local/jmeterScripts/test.jmx -l /usr/local/testResult/test.jtl

脚本运行结束后,会在testResult目录下生成一个test.jtl文件,将这个文件导出到windows端JMeter中的聚合报告中,即可查看测试详情。

 

二、注意事项
如果使用参数化策略,将参数化文件放入Linux系统中Jmeter安装文件的bin目录下,同时脚本参数化设置中,文件路径只写文件名即可。

以往这种方法是正常的,但在最近的实践中,遇到了诡异的问题,参数化文件被报不存在的错误:

在这里插入图片描述

 

解决方案是:在Filename处填写参数化文件在Linux系统下的绝对路径,当然这个输入框是不允许输入Linux路径格式的,需要通过引用变量的方式赋值。

在这里插入图片描述

用户定义的变量中填写参数化文件的完整路径:

在这里插入图片描述

其他可能遇到的问题就是,脚本中引用了一些jar包或者使用了插件,而linux中的JMeter安装包中未含有这些资源,最简单的解决方案就是将包含完整资源的windows端JMeter安装包压缩后上传到Linux系统中。

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值