avatar

目录
Jmeter-Linux测试
  • 本文内容:快速通过Jmeter录制脚本并在Linux下进行测试。
  • 只介绍简单的Http接口性能测试,要想进行功能测试还需要Badboy工具录制脚本,通过Jmeter进行编辑等。
  • 主要过程分为两步:
    1. 通过Jmeter录制执行脚本(Windows下执行的);
    2. 大的测试一定是通过命令行来执行测试脚本,本机的cmd或者linux环境下皆可。

通过Jmeter录制脚本(Windows下)

1 Jmeter安装及环境配置:

  • 主要就是傻瓜式的下载解压缩安装,配置环境变量,略。

2 Jmeter录制脚本过程:

在开始之前可以先将Jmeter的语言切换为中文:options/ChooseLanguage/Chinese

2.1 创建一个测试计划:
  • 默认是有一个的,点击文件/新建即可,可修改测试计划名称。

2.2 创建并设置线程组:
  • 创建线程组:在测试计划上面右击:选择添加/线程(用户)/线程组

  • 设置线程组:如下图:

2.3 创建并设置HTTP请求:
  • 创建HTTP请求:在线程组上面右击:选择添加/取样器/HTTP请求

  • 设置HTTP请求:设置请求协议,请求方式(POST/GET),请求路径等

2.4 创建并设置HTTP请求头:

我们都知道Http请求是由三部分构成的,请求行,请求头,请求数据体,上面的Http设置设置了请求行和请求数据体,这里再设置一下清求头,因为请求得数据体是json。

  • 创建HTTP请求头:在线程组上面右击,选择添加/配置原件/HTTP信息头管理器

  • 设置HTTP清求头:根据自己项目的需要添加设置HTTP清求头数据;

2.5 创建并设置CSV数据:
  • 创建CSV数据文件设置:在线程组上面右击,选择添加/配置原件/CSV数据文件设置

  • 设置CSV数据文件:

    注意:这里的csv文件是从外部导入的数据文件,至于csv格式的文件怎么创建,可参考:https://jingyan.baidu.com/article/c843ea0b9a641477931e4a89.html,注意不要在csv文件中添加参数名称(会默认是一条数据),直接添加数据,一行一条数据,一条数据中的多个数据以英文状态下的逗号间隔:

2.6 添加察看结果树和汇总报告:
  • 直接在线程组上面右击,选择添加/监听器/,选择相应内容即可。
2.7 保存:
  • 注意保存的文件是.jmx文件,如下:

执行测试脚本(Linux下)

  • 执行测试脚本不要通过Jmeter的GUI来执行,官网建议通过命令行来执行。所以可以通过电脑自带的cmd来执行(windows下),或者在linux环境下执行,这两种环境下的执行命令和执行结果都是一致的。

1 Jmeter的安装及环境配置

  • 在linux安装Jmeter之前应先保障有JDK的环境,可以通过java -version 检验,显示如下图即有JDK的环境,没有就自己装吧。

  • 将windows环境下的Jmeter安装包压缩,丢到linux里面(不选择文件的话是直接丢到/home/xxuser目录下了)
    bash
    1
    2
    # 通过XShell执行linux命令的话可以使用下面的命令将压缩包丢到linux中
    rz
  • 解压缩:

    bash
    1
    unzip pache-jmeter-5.0.zip
  • 修改环境变量:

    没有修改/etc/profile文件的权限的话可以直接修改/home/xxxuser目录下的隐藏文件.bash_profile文件(可以通过ll -a命令打开),添加jmeter的环境变量。

    bash
    1
    2
    3
    4
    5
    6
    7
    8
    9
    # .bash_profile
    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi
    # User specific environment and startup programs
    PATH=$PATH:$HOME/.local/bin:$HOME/bin
    export PATH
    export PATH=$PATH:$HOME/apache-jmeter-5.0/bin
  • 使环境变量生效:

    bash
    1
    source .bash_profile
  • 测试Jmeter是否配置成功:

    bash
    1
    jmeter -v

    执行上面的命令出现下面的结果即配置成功:

2 一句执行命令:

  • 在执行之前,需要将:测试计划执行脚本CSV数据文件上传到Linux中。

  • 在执行之前,需要将:测试计划执行脚本CSV数据文件上传到Linux中。

  • 在执行之前,需要将:测试计划执行脚本CSV数据文件上传到Linux中。重要的事情说三遍~

  • 执行命令只有一句话(网上建议切换到apache-jmeter-5.0/bin/目录下执行下面的命令,linux下好像不在这个目录下也可以,反正我没试,You can try~):

    bash
    1
    jmeter -n -t /home/jtest/Test.jmx -l /home/jtest/testplan/result/test.jtl -e -o /home/jtest/testplan/report/webreport
    • /home/jtest/Test.jmx:这个是使用Jmeter生成的测试脚本(执行计划的文件路径);
    • /home/jtest/testplan/result/test.jtl:这个是执行测试脚本过程中生成的聚合报告;
    • /home/jtest/testplan/report/webreport:这个是执行测试脚本的过程中生成的web版的测试报告,就是一堆前端的东西,直接Browser打开查看。
    • -h:帮助 -> 打印出有用的信息并退出
    • -n:非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
    • -t: 测试文件 -> 要运行的 JMeter 测试脚本文件
    • -l: 日志文件 -> 记录结果的文件
    • -r: 远程执行 -> 启动远程服务
    • -H: 代理主机 -> 设置 JMeter 使用的代理主机
    • -P: 代理端口 -> 设置 JMeter 使用的代理主机的端口号
    • -e
    • -o

3 导出test.jtl

  • 可通过Jmeter打开这个文件查看聚合报告
  • 过程略,侮辱智商。

4 导出webreport

  • 前端的那堆东西,通过浏览器打开查看TPS等图形化的测试数据
    端口 -> 设置 JMeter 使用的代理主机的端口号
    • -e
    • -o

3 导出test.jtl

  • 可通过Jmeter打开这个文件查看聚合报告
  • 过程略,侮辱智商。

4 导出webreport

  • 前端的那堆东西,通过浏览器打开查看TPS等图形化的测试数据
  • 过程略,侮辱智商。
文章作者: XiaoMing
文章链接: https://xiaoming0929.github.io/2020/04/02/Jmeter-Linux%E6%B5%8B%E8%AF%95/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 XiaoMing's Blog
打赏
  • 微信
    微信
  • 支付寶
    支付寶