前言

使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源。优点如下:
1、节约系统资源:无需启动界面,节约系统资源

2、便捷快速:仅需启动命令行,输入命令便可执行,是为命令达人最爱

3、易于持续集成:可通过shell脚本命令执行


本文介绍linux下以命令行模式运行的方法。

sh jmeter.sh -n -t <testplan filename> -l <listener filename>
示例: sh jmeter.sh -n -t test.jmx -l test.jtl 示例含义:则表示以命令行模式运行testplan.jmx文件,输出的日志文件为test.jtl。
日志默认输出路径同jmx脚本路径。可自行设置绝对路径

一、运行及查看结果

1、进入\jmeter\bin目录,执行命令,如下图:

上述测试结果展示为:执行4条用例,错误率为0.00%,Avg平均响应时间为1251ms.
 

2、查看结果
上述的命令有要求测试结果保存到test.jtl中,如果需要可以在GUI模式下查看测试报告。

步骤:打开Jmeter GUI界面 -> 在测试计划下,添加对应的测试报告元件(聚合报告、查看结果树) -> 选择对应的日志文件。

⚠️需要看什么报告,就添加什么报告测试元件!!!

具体见下图:

 
 
 

二、参数化常用变量

在linux中,使用非gui的方式执行jmeter。若需更改参数,必须先编辑jmx文件,找到对应的变量进行修改,比较麻烦。因此可以参数化一些常用的变量,直接在Jmeter命令行进行设置。

__P:设置属性的默认值。有两个参数:变量名,默认值(默认值为1)。
例如:${__P(hostname,XXX)}:返回属性hostname的值,如果没有定义该属性则返回值XXX

1、以设置本地jmeter属性为例,先在windows下编辑脚本,将线程数、循环次数、ramp up-period等参数化。

如下图:定义四个变量和变量对应的默认值。

例如${__P(threadNum,1)},表示变量threadNum的默认值为1。

 
2、保存脚本,上传到linux中,执行命令
sh jmeter.sh -n -t /home/ubuntu/jmeter1/test.jmx -J threadNum=
-J period= -J time= -l /home/ubuntu/jmeter1/test.jtl

3、再次运行脚本时,无需编辑脚本,只需要在执行命令中更改threadNum、period和time的值,即可修改线程属性.


三、非 GUI 模式运行测试脚本可以使用的命令

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

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

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

-J 是设置本地jmeter属性,引用变量参数

-G 是设置server的jmeter属性

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

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

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

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

以上对你有帮助的话,点个赞吧~

Jmeter(非GUI模式)教程的更多相关文章

  1. Jmeter非GUI模式运行

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

  2. Jmeter非GUI模式启动

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

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

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

  4. jmeter 非GUI模式下传参

    为什么要使用非GUI模式?--因为GUI模式下运行的时候消耗的内存比非GUI模式大,会使得压力测试的结果不准确. 根据参数类型分为两种:jmeter.properties和system.propert ...

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

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

  6. jmeter非GUI模式命令

    一.如果没有.jtl文件,运行如下命令: jmeter -n -t baidu.jmx -l result.jtl 以非GUI形式运行Jmeter脚本jmeter -n -t baidu.jmx -l ...

  7. jmeter 非GUI模式下测试报错An error occurred: Unknown arg:

    D:\download\性能工具\JMeter\apache-jmeter-2.11\apache-jmeter-2.11\bin>jmeter -n -t E:\性能测试\jmeter scr ...

  8. jmeter 非gui 模式跑jmx

    D:\study\apache-jmeter-3.0\bin>jmeter -n -t D:\study\apache-jmeter-3.0\基金排行.jmx -l D:\study\apach ...

  9. JMeter非GUI模式下日志介绍

    Creating summariser <summary> Created the tree successfully using /opt/JMeter/TestPlan/test.jm ...

随机推荐

  1. Emmet快速编写代码

    Emmet快速编写代码 ★div → <div></div>, span → <span></span> ★CSS选择器 ​ 给标签指定id选择器 di ...

  2. Linux 小知识翻译 - 「单CD 的linux」

    这次聊聊「单CD Linux」. 所谓「单CD Linux」,就是不用安装,从CD-ROM启动后就可以使用的Linux. 有名的KNOPPIX就是「单CD Linux」,此外还有Puppy Linux ...

  3. Xmind破解

    原始教程 http://df1551e3.wiz03.com/share/s/3v5l7z2wdQVs2llAUc0C_-n_2cPZVe0kEA2n2iw1Ay1ApF_o

  4. 【美妙的Python之三】Python 对象解析

    美妙的Python之Python对象         简而言之: Python 是能你无限惊喜的语言.与众不同.         Python对象概念的理解,是理解Python数据存储的前提.Pyth ...

  5. Java中关于CyclicBarrier的使用

    CyclicBarrier工具类主要是控制多个线程的一起执行,CyclicBarrier 实例可以多次使用. 演示程序: import java.util.Random; import java.ut ...

  6. Kubernetes中的Taint污点和Toleration容忍

    Taint(污点)和 Toleration(容忍)可以作用于 node 和 pod master 上添加taint kubectl taint nodes master1 node-role.kube ...

  7. mysql数据类型介绍(含text,longtext,mediumtext说明)

    转自http://m.blog.csdn.net/sipsir/article/details/12343581 转载,文章原连接已经失效,百度快照找到的. MySQL支持大量的列类型,它可以被分为3 ...

  8. dubbo报错Data length too large: 10710120处理,及服务提供者协议配置详细说明

    工作中遇到以下报错信息 cause: java.io.IOException: Data length too large: 10710120, max payload: 8388608, chann ...

  9. 一加将在欧洲推出第一款商用 5G 手机

    远在太平洋中部的夏威夷群岛,高通举办了骁龙峰会. 峰会的惯例,各行业的合作伙伴都被邀请上台演讲.中国企业里,去年来的是小米雷军,而今年刚开场,一加手机 CEO 刘作虎就现身了. 与以往一样,张老板身着 ...

  10. POJ1251(Kruskal水题)

    https://vjudge.net/problem/POJ-1251 The Head Elder of the tropical island of Lagrishan has a problem ...