==========================================================================================================

写在前面:

因为工作需要,Windows下的自动化测试已经不能满足需求,需要在Linux环境下运行。

主要原因是:因为上班时候,使用Jmeter Windows平台时,会占用大量的网络资源,其他同事上网都会受到影响(也不知道其他公司是这样的情况吗,主要是网慢)

然后,第二个原因是,Windows平台下,加载到一定程度时,资源会被耗尽,而且测试服务器和本地服务器的网段不在一块,测试会经过很多网络链路

所以:结论就是,在linux下,实现服务器对服务器公网的压测。

==========================================================================================================

在Linux服务器上测试,首先,需要部署Jmeter到linux服务器上。

1、配置java环境(网上借鉴别人的)

        (1)检查当前系统已安装jdk的版本:  rpm -qa|grep jdk,若未安装则执行下一步骤
              (卸载命令rpm -e --nodeps java-1.6.0-1.45.1.11.1.el6.x86_64 【java-1.6.0-1.45.1.11.1.el6.x86_64为jdk版本信息】)
       (2)安装jdk1.7: 将jdk-7u79-linux-x64.rpm文件拷到/opt/目录下,执行命令:

>>cd /opt/

>>rpm -ivh jdk-7u79-linux-x64.rpm

确认安装成功:

>>rpm -qa|grep jdk

(3)最后修改vi /etc/profile,在文件的最后添加如下内容:

JAVA_HOME=/opt/jdk1.7.0_75
              PATH=$JAVA_HOME/bin:$PATH
              CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
              export JAVA_HOME
              export PATH
              export CLASSPATH

(4)保存后,用户退出

(5)再次登录liunx,检查jdk是否安装成功:输入java、输入java -version,能查看到版本即jdk安装成功

2、安装jmeter

(1)直接将 windows使用的jmeter拷贝至opt目录下面,即apache-jmeter-2.13版本

[也可以下载apache-jmeter-2.12.tgz移动到/opt目录下,解压:tar -zxvf apache-jmeter-2.12.tgz]

(2)配置环境变量:vi  /etc/profile,输入:

                 export PATH=/opt/apache-jmeter-2.13/bin/:$PATH
                保存后,用户退出
          (3)重新登录linux系统,检验jmeter是否可以运行:jmeter -v
                  Copyright (c) 1998-2015 The Apache Software Foundation
                  Version 2.13 r1665067
           (4)查看jmeter.sh是否能够执行,若不能未其添加执行权限,我直接  chmod 777 jmeter.sh,可用  sh jmeter.sh -v 来检测命令是否可用。

3、编写测试用例jmx

我是在windows的Jmeter模式下,新建一个测试计划,可在测试计划里添加对应的定时器,聚合报告等,保存并上传到linux机器对应目录。

在linux目录下找到你的测试计划,vim打开进行编辑

<stringProp name="ThreadGroup.num_threads"></stringProp>   线程数
<stringProp name="ConstantTimer.delay"></stringProp> 固定定时器的时间间隔
可以在Linux环境下,进行相关的参数调整。

Jmeter安装成功后,jmx文件准备好时,可以使用以下命令,运行压测文件。

下载:同样在jemeter官网下载 对应的安装包,解压后执行:./jmeter -n -t ../ssdb_test.jmx -l ../log.jtl
/root/test/apache-jmeter-3.2/bin/jmeter -n -t test.jmx -l test.jtl

运行测试脚本时可以使用的一些命令:

  • -h 帮助 -> 打印出有用的信息并退出
  • -n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
  • -t 测试文件 -> 要运行的 JMeter 测试脚本文件
  • -l 日志文件 -> 记录结果的文件
  • -r 远程执行 -> 启动远程服务
  • -H 代理主机 -> 设置 JMeter 使用的代理主机
  • -P 代理端口 -> 设置 JMeter 使用的代理主机的端口号

例如:jmeter -n -t test1.jmx -l logfile1.jtl -H 192.168.1.1 -P 8080

4、结果文件即之前保存过的test.jtl格式文件

该文件可以使用 GUI 模式下的聚合报告查看,可以打开 JMeter GUI 界面 -> 测试计划 -> 添加线程组 -> 添加聚合报告 -> 点击 "浏览..." 按钮找到你刚生成的 jtl 文件打开即可统计结果进行分析。

5、需要把log从服务器上下载到本地时,使用:

tar -zcvf JavaTest-500-3-ForEver.tar.gz JavaTest-500-3-ForEver.jtl JavaTest-500-3-ForEver.log

然后将文件使用可视化的界面下载到本地。

参考地址:https://www.cnblogs.com/zhaoxd07/p/5059541.html

【Jmeter自学】Linux环境下Jmeter运行的更多相关文章

  1. linux环境下jmeter安装和运行

    linux环境部署: 在Linux服务器先安装jdk:2.以jdk-8u172-linux-x64.tar.gz为例:下载地址:http://www.oracle.com/technetwork/ja ...

  2. linux 环境下jmeter+ant+jenkins

    一.linux下的jenkins的安装: 下载链接:https://pan.baidu.com/s/1qZItZOC 密码:58da Jenkins 下载网址: http://jenkins-ci.o ...

  3. Linux 环境下jmeter 安装和配置

    1. 下载和安装JDK vim /etc/profile export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_92 export JRE_HOME=$JAVA_HOME/jr ...

  4. 【NO.2】Jmeter-安装Jmeter - 在Linux环境安装Jmeter - 在Windows环境安装Jmeter

    当配置完Jmeter运行的环境之后,就可以开始安装Jmeter了. 为什么既要告诉各位"在Linux系统内安装Jmeter",又要告诉各位"在Windows系统内安装Jmeter"?因为当我们在构建1 ...

  5. Linux环境下Jmeter 报错:Unable to get local host IP address

    主要是没有在host中配置本机ip hostname查看本机名 [root@test task]# hostname test [root@test task]# 打开 [root@test task ...

  6. 在linux环境下编译运行OpenCV程序的两种方法

    原来以为在Ubuntu下安装好了OpenCV之后,自己写个简单的程序应该很容易吧,但是呢,就是为了编译一个简单的显示图片的程序我都快被弄崩溃了. 在谷歌和上StackOverFlow查看相关问题解答之 ...

  7. Linux环境下部署完JDK后运行一个简单的Java程序

    前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...

  8. linux环境下使用jmeter进行压力测试

    linux环境下使用jmeter进行压力测试 linux环境下使用就meter进行压力测试: linux环境部署: 在Linux服务器先安装jdk: 2.以jdk-8u172-linux-x64.ta ...

  9. linux 环境下运行STS时 出现must be available in order to run STS

    linux 环境下运行ECLIPSE时 出现 “ A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avai ...

随机推荐

  1. deque/defaultdict/orderedict/collections.namedtuple()/collections.ChainMap() 笔记

    关于deque的使用 collections.deque([list[, max_length]]) # 不限定长度,可随意添加没有上限 >>> from collections i ...

  2. Golang 操作mysql使用举例---连接本地数据库

    连接数据库的方式有两种:TCP和Unix域socket. 本文使用Unix domain sockets连接数据库.关于TCP连接数据库可以参考Go 操作mysql使用举例 下面例子中,演示了使用sh ...

  3. CentOS6.4 添加nginx系统服务

    简介: Nginx安装完成后默认不会注册为系统服务,所以需要手工添加系统服务脚本.在/etc/init.d目录下新建nginx文件,并更改权限其即可. 1.新建nginx文件 1.1.新建文件:vi ...

  4. socket 断线重连

    send发送数据时,发送失败,进行如下重连处理: ) < )//serbuf中有数据可以发送才会执行这条语句 { printf("serial to tcp send msg erro ...

  5. linux进程监控和简单的重启&服务的创建 参考自http://blog.csdn.net/lockheed_hong/article/details/73549837

    脚本文件 该脚本实现了一个检测进程是否存在,不存在的情况下重启进程并且记录日志. #! /bin/sh proc_name="console/queue/gift.php" # 进 ...

  6. MTP 设备不显示

    win7 资源管理器(我的电脑)中不显示,但应用宝,豌豆荚工具能访问文件. 环境:WIN7 64位,手机HTC U11+ . 解决: 在设备管理器,计算机名称上右键-扫描检测硬件改动,等安装完手机驱动 ...

  7. InfluxDB v1.6.4 下载

    InfluxDB v1.6.4 OS X (via Homebrew) brew update brew install influxdb Docker Image docker pull influ ...

  8. 让Netbeans 8.0 支持 Python 编程

    发布人 admin. 分类 Python, 技术手札 Netbeans版本:Netbeans 8.0 for PHP Python版本:python 2.7.8 1.添加插件更新中心 打开Netbea ...

  9. [蓝桥杯]ALGO-90.算法训练_出现次数最多的整数

    问题描述 编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20.然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来.如果有两 ...

  10. QT 5 初学1 多窗口切分-续

    转载:omydocument 主窗口本身就带着菜单,工具栏,和状态栏,作为一个基本应用,这些都不用操心. 一个工具,需要把窗口切分成三部分,左边,右上,右下.左边显示选择的功能,右上是主窗口.右下作为 ...