jmeter有自己的GUI页面,但是当线程数很多或者现在有很多的测试场景都是基于linux下进行压测,这时我们可以使用jmeter的命令行方式来执行测试,该篇文章介绍jmeter单节点命令运行方式。

1:准备单节点linux机器,并安装jdk,即安装java环境

我的linux机器为:134.64.14.96,至于怎么安装java环境就不说了

2:上传并解压最新的jmeter包到linux服务器上,目前jmeter版本已经进入3了这里给出我的安装包云盘地址:http://pan.baidu.com/s/1bI3r2I 密码:f5ll

3:由于linux上面没有像windows那样直观的jmeter的gui页面使得我们制定jmeter的jmx脚本比较费力(一般linux服务器为了性能考虑不会装图形化界面),所以jmx脚本我们可以在本地windows机器上利用jmeter的gui页面先制作好,然后上传到服务器上去执行

下面用百度请求为例:

在本地双击jmeter的bin目录下的jmeter.bat文件启动jmeter的gui页面,生成一个百度的接口请求jmx脚本,并在本地调试通过

调试通过以后,此时功能测试的脚本就生成好了,我们在将此脚本做一定配置和修改,使其成为一个可以放在服务端跑的性能脚本

一般我都做两步:

第一步:删除-查看结果树等一切监听器 ,目的是:jmeter底层就是java写的,为减少压测时性能损耗一切不用的控件都不要放在上面,至于测试结果会有jtl文件能够统计不需要这里在添加监听器

第二步:修改线程组下面的线程数和循环次数,如下面的设置可以实现:20个线程数跑3分钟的场景,修改完成进行保存该jmx文件

4:上传该性能脚本(baidu_requests_results.jmx)到linux服务器上

如我上传在了bin目录下/home/tester/apache-jmeter-3.0/bin

5:命令行运行jmeter脚本

执行命令为:

./jmeter -n -t baidu_requests_results.jmx -l baidu_requests_results.jtl

观察服务器控制台:

这样就用命令行的方式完成了jmx脚本20个线程3分钟并发的场景测试

jmeter命令行具体各项的含义为:

-h 帮助 -> 打印出有用的信息并退出

-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter

-t 测试文件 -> 要运行的 JMeter 测试脚本文件

-l 日志文件 -> 记录结果的文件

-r 远程执行 -> 在Jmter.properties文件中指定的所有远程服务器

-H 代理主机 -> 设置 JMeter 使用的代理主机

-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号

6:执行结果说明

一:可以看到控制台结果中打印的日志

summary +  91773 in 00:00:06 = 15787.5/s Avg:     0 Min:     0 Max:    78 Err: 91773 (100.00%) Active: 20 Started: 20 Finished: 0

解析为:

在6秒的时间内增加请求91773个,平均每秒处理15787.5个请求数目,时间单位为ms,err为错误率,这里百度请求为100%错误是因为百度本身的机制造成的,同一个ip短时间并发请求百度,会拒绝请求所以才会出错,真实情况下执行自己自定义脚本可以根据错误率查看服务器是否能承受住那么大的压力,active为在线用户数,即当前有多少个用户在并发请求

二:在jmeter的bin目录下生成了一个jtl文件,该文件中收集了3分钟内所有的测试结果

throughput(每秒处理事务数)

随着活跃线程数增加响应时间曲线:

聚合报告:

对于jtl测试结果我们可以有多种方式去查看另外性能测试对于性能结果的分析也至关重要,关于jtl测试结果查看与分析,这里请看我的jmeter系列博文之-jmeter之jtl测试报告(说明:上面的图表中错误率为100%是由于我并发压测百度,百度本身机制会拒绝短时间内同一ip并发请求所以才会出错)

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

来源:https://www.cnblogs.com/miaomiaokaixin/p/6114756.html

jmeter非GUI模式运行-单节点的更多相关文章

  1. 『动善时』JMeter基础 — 55、JMeter非GUI模式运行

    目录 1.JMeter的非GUI模式说明 2.为什么使用非GUI模式运行JMeter 3.怎样使用非GUI模式运行JMeter (1)非GUI模式运行JMeter步骤 (2)其它参数说明 4.CLI模 ...

  2. Jmeter非GUI模式运行

    非GUI模式,即命令行模式,运行 JMeter 测试脚本能够大大缩减所需要的系统资源. 使用的命令: jmeter  -n  -t  脚本文件路径   -l   结果输出文件路径   -j   日志文 ...

  3. 使用非 GUI 模式运行 JMeter 压力测试

    使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源.使用命令jmeter -n -t <testplan filename> -l <list ...

  4. 『动善时』JMeter基础 — 55、使用非GUI模式运行JMeter(命令行模式)

    目录 1.JMeter的非GUI模式说明 2.为什么使用非GUI模式运行JMeter 3.使用非GUI模式运行JMeter (1)非GUI模式运行JMeter步骤 (2)其它参数说明 4.CLI模式运 ...

  5. 非 GUI 模式运行 JMeter 压力测试

    非 GUI 模式,即命令行模式,运行 JMeter 测试脚本能够大大缩减所需要的系统资源. 使用命令:jmeter -n -t <testplan filename> -l <lis ...

  6. 非GUI模式运行Jmeter脚本

    一.应用场景 日常测试过程中发现,在大数量并发时,jmeterGUI界面经常宕机.卡死,在这种情况下我们就需要使用命令行来执行脚本了(非GUI模式). 二.命令行模式优点 1.节约系统资源,无需启动界 ...

  7. 非GUI 模式运行 jmeter 压力测试

    非 GUI 模式,即命令行模式,运行 JMeter 测试脚本能够大大缩减所需要的系统资源. 使用命令:jmeter -n -t <testplan filename> -l <lis ...

  8. jmeter非GUI模式如何压测并生成测试报告

    在启动Jmeter时,我们会看到这样一句提示: 不要使用GUI模式(界面模式)进行负载测试,GUI模式只能用于创建测试和调试.进行负载测试时,需要时用非GUI模式. 那么为什么进行负载测试时一定要用非 ...

  9. Jmeter非GUI模式启动

    首先我们需要了解,GUI和非GUI模式启动Jmeter对测试的影响:Jmeter可视化界面及监听器展示结果需要消耗负载资源,从而导致,在大并发的情况下GUI方式会导致负载机资源紧张,对性能造成影响 e ...

  10. JMeter非GUI界面运行

    JMeter是一款可以用于做接口可以用于作压力性能的应用程序,该程序是纯Java语音开发,所有对环境支持都比较好. JMeter可以运行模式有两种,一种是UI图形,另一种是命令模式运行也就是非GUI模 ...

随机推荐

  1. Teamcity 部署

    1.先安装docker环境 team_city安装 2.docker run -it --name teamcity-server \ -v /data/teamctiy_data/:/data/te ...

  2. Gitlab迁移(亲测)

    1. 概述 当前gitlab部署在k8s内,根据基础设施设计此处不合理,需将gitlab迁移至主机部署的gitlab 当前位置:k8s 集群 迁移后位置:云主机部署gitlab 2. Gitlab从K ...

  3. 【SSO单点系列】(9):CAS4.0 之客户端排除不需要过滤的路径

    客户端排除不需要过滤的路径 Web.xml <filter> <filter-name>CASFilter</filter-name> <filter-cla ...

  4. 【Linux】有名管道实现进程间通信——一个简单聊天程序

    有名管道实现简单聊天程序 1. "你来我往"式简单聊天 函数功能:简单聊天程序,两个程序a和b,a向b发送信息,b接收信息,b向a发送信息,a接收信息:... 源码参考: chat ...

  5. Jupyter notebook upload无法加载本地ipynb文件

    可能是本地浏览器(IE)问题,修改默认浏览器.

  6. Java-Collectors.groupingBy

    Java中的Collectors类的groupingBy()方法用于按某些属性对对象进行分组并将结果存储在Map实例中. 当我我们想利用它的特性,我们需要指定一个属性来执行分组.此方法提供的函数类似于 ...

  7. yolov5查看训练日志图片和直方图(包括稀疏训练bn直方图)

    0.D:\code\codePy\yolov5-6.1\runs\train\exp25文件夹下有 events.out.tfevents.1675823043.DESKTOP-ACC9FL4.521 ...

  8. Vue 使用Lodop进行标签(条码)打印

    一.使用到的插件:vue-barcode(vue条形码插件),Lodop打印控件(我这里使用windows64版,所以以此进行举例说明.). 详述:前者(指vue-barcode)针对在前端界面上观察 ...

  9. 第一个WCF程序(最小实现)

    环境:Microsoft Visual Studio 2017 注意事项:右键"以管理员身份"启动VS. 目标:实现一个加法运算,并在服务器端D盘新建一个文件夹. 一.服务器端创建 ...

  10. CSS入门学习笔记

    CSS入门学习笔记一.CSS简介1.什么是CSS?2.为什么使用CSS?3.CSS的作用二.CSS语法1.CSS基础语法2.CSS注释语法3.CSS应用方法三.CSS选择器1.元素选择器2.类选择器3 ...