简介:使用非GUI模式,即命令行模式运行jmeter测试脚本能够大大缩减系统资源

1、配置jdk及添加环境变量

变量名:JAVA_HOME
变量值: C:\Program Files\Java\jdk1.8.0_51 (即jdk安装的位置)
变量名:Path  (这个变量名已在系统变量中存在,现只需增加如下变量值)
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
变量名:CLASSPATH
变量值:.;%JAVA_HOME%lib;%JAVA_HOME%lib\tools.jar(记住前面的.)

2、配置jmeter环境变量

变量名:JMETER_HOME
变量值:C:\Program Files\apache-jmeter-2.11
变量名:CLASSPATH
变量值:%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib/logkit-2.0.jar;

3、命令行模式

  双击jmeter.bat ,打开windows dos窗口和gui界面,dos命令窗口不可关闭。若双击报错,可替换jmeter.bat 如下参数

set HEAP=-Xms512m -Xmx512m
set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m
set SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50%
set TENURING=-XX:MaxTenuringThreshold=2
set PERM=-XX:PermSize=64m -XX:MaxPermSize=128m -XX:+CMSClassUnloadingEnabled

3.1 命令介绍

jmeter -n -t <testplan filename> -l <listener filename>
示例: jmeter -n -t testplan.jmx -l test.jtl示例含义:则表示以命令行模式运行testplan.jmx文件,输出的日志文件为test.jtl

3.2 参数介绍

官方手册

-h, –help -> prints usage information and exit
-n, –nongui -> run JMeter in nongui mode
-t, –testfile <argument> -> the jmeter test(.jmx) file to run
-l, –logfile <argument> -> the file to log samples to
-r, –runremote -> Start remote servers (as defined in remote_hosts)
-H, –proxyHost <argument> -> Set a proxy server for JMeter to use
-P, –proxyPort <argument> -> Set proxy server port for JMeter to use

具体含义

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

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

4. 实例介绍

4.1 脚本运行

JMeter 默认去当前目录寻找脚本文件,并把日志记录在当前目录。比如你在 C:\tools\apache-jmeter-2.11\bin 目录下执行以上命令,JMeter 会去该目录下寻找 test.jmx 脚本并把执行结果放在该目录。

如果你的脚本在其他目录,而且想要把执行结果放在另外文件夹,需要使用绝对路径告诉 JMeter,如下:

上述测试结果展示为:执行3条用例,错误率为33.33%,说明有1条用例执行错误。

个人实践

脚本位于D:\Learning\Jmeter,此时执行jmeter.bat -n -t 充值压测.jmx -l result.jtl,报错如下:

脚本位于D:\Learning\Jmeter,此时进入jmeter.bat所在bin目录执行jmeter.bat -n -t 充值压测.jmx -l result.jtl命令,则报错Could not open 充值压测.jmx,

解决方法:执行命令改为jmeter.bat -n -t  D:\Learning\Jmeter\充值压测.jmx -l D:\Learning\Jmeter\result.jtl

将脚本放入jmeter.bat所在bin目录,执行命令,成功

2.2. 报告查看

上述的命令有要求测试结果保存到D:\Learning\Jmeter\apache-jmeter-2.13\bin result.jtl中,如果需要可以在GUI模式下查看测试报告。

1、打开Jmeter GUI界面

2、在测试计划下,添加对应的测试报告元件,此处演示,增加了:聚合报告、查看结果树、Summary Report测试报告

3、在所有数据写入一个文件,浏览中选择对应的日志文件

4、下面就会有对应的表格展示,具体见下图

5. 参考资料

1 . https://girliemangalo.wordpress.com/2009/10/29/jmeter-run-scripts-from-the-console/

2. 实际执行过程中在cmd中进入e:\jmeter\bin目录方法:

e:

cd e:\jemer\bin

部分内容转自:http://www.cnblogs.com/leeboke/p/5238269.html

备注:省略步骤一步骤二环境变量的配置,仍可通过jmeter.bat打开dos命令窗口和gui测试界面。如若不配置,不清楚会给压测带来什么影响,后续再跟进

  

转载于:https://www.cnblogs.com/emilyyoucan/p/7521263.html

jmeter命令行压测相关推荐

  1. jmeter命令行运行-分布式测试

    秒秒开心 jmeter命令行运行-分布式测试 上一篇文章我们说到了jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmet ...

  2. Jmeter阶梯式等值压测-详细实战教程(一)

    Jmeter阶梯式等值压测-详细实战教程 导语:全能测开之路小白–Jmeter 作者:变优秀的小白 QQ学习交流群(new): 811792998 QQ群(new): 811792998 注:如中途遇 ...

  3. 云效平台性能测试功能:一个基于Jmeter的性能压测平台

    云效平台性能测试功能(Galaxy)是一个基于Jmeter的性能压测平台,它集脚本.场景.压测.监控和报表展示为一体,是一个能快速.低成本实施压测的平台.降低了入门使用成本,让开发和测试都可以方便的执 ...

  4. Jmeter实现多用户压测

    压测工具:jmeter 脚本录制工具:BlazeMeter 使用jmeter实现多用户压测:比如登录这个功能,在浏览器录制脚本的时候找到登录的接口,如下图所示:在浏览器的开发者工具中找到登录所有的请求 ...

  5. 【Jmeter篇】Jmeter分布式调度压测部署

    Jmeter 是java 应用,对于CPU和内存的消耗比较大,因此,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起JAVA内存溢出错误.为了让jmeter工具 ...

  6. jmeter生成优美的压力测试报告,jmeter生成html压测报告,jmeter压力测试

    文章主要介绍以下三点: 1:使用jmeter进行压力测试步骤 2:使用jmeter函数设置请求参数值 3:导出并生成一份html格式的测试报告 最终生成的测试报告如下: jmeter下载地址:http ...

  7. 6. 堪比JMeter的.Net压测工具 - Crank 实战篇 - 收集诊断跟踪信息与如何分析瓶颈

    1. 前言 上面我们已经做到了接口以及场景压测,通过控制台输出结果,我们只需要将结果收集整理下来,最后汇总到excel上,此次压测报告就可以完成了,但收集报告也挺麻烦的,交给谁呢-- 找了一圈.没找到 ...

  8. JMeter 命令行测试

    为什么需要jmeter的命令行? 性能:JAVA不是一种用于GUI的语言,进行性能测试时,建议使用命令行模式,能够节省资源,运行更多的虚拟用户. 持续集成:一般来说,jmeter不论和何种工具进行集成 ...

  9. 4. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识wrk、wrk2

    1. 前言 上一篇文章我们了解了bombardier,并知道了bombardier.yml与开源项目bombardier的关系,接下来的文章我们了解一下wrk.wrk2,并对比一下它们与bombard ...

最新文章

  1. Ant Design Pro 登录流程以及路由权限设置
  2. 战略突破!又一国产芯片巨头即将追赶华为,成为思科的替代者?
  3. python 任务计划_windows 10 设定计划任务自动执行 python 脚本的方法
  4. python定义一个人类_Python类的定义、继承及类对象使用方法简明教程
  5. python如何实现人工智能应用锁_如何清除应用锁的数据库
  6. 人物结局 归德侯府_影视里的唐伯虎抱得美人归 历史上的他结局又是什么样呢?...
  7. 迁移学习实战 | 快速训练残差网络 ResNet-101,完成图像分类与预测,精度高达 98%!...
  8. canvas学习(四):高级属性
  9. visio安装后导致excel滑动滚动条闪退的问题
  10. roseha linux,RoseHA 9.0 for Linux快速安装说明_v2.0-2015-04.pdf
  11. 2015.11-12 maxon电机接线——调试——控制
  12. JAVASE基础知识栈梳理
  13. 不喜欢现在的领导,怎么办?不懂跟领导相处,你到哪都混不好
  14. 1838公共政策概论 (2)
  15. 机器学习数学基础知识
  16. KITTI数据集--参数
  17. matlab实现直方图规定化
  18. Word中“更新所有域”的用法
  19. linux 程序加启动项,linux 让一个程序开机自启动并把一个程序加为服务
  20. 中国石油大学《安全系统工程》 ​​​​​​​第三阶段在线作业

热门文章

  1. goland go test 多个文件_这个代码怎么会编译不通过?Goland 新手常见问题解决:GOPATH 和 Go Modules 编译不成功...
  2. 【spring boot】ajax post提交遇到403
  3. linux配置python环境变量_linux添加PYTHONPATH环境变量
  4. python列表获取最后一个元素的方法_Python3基础 pop 取出列表的最后一个元素
  5. mysql算法优化原则_Mysql优化原则_小表驱动大表IN和EXISTS的合理利用
  6. tcp当主动发出syn_(二)深入浅出TCPIP之再识TCP,理解TCP三次握手(上)
  7. 从零开始学习docker(九)持久化存储和数据共享之 bind Mounting
  8. 算法导论学习笔记 第7章 快速排序
  9. Python,yyds!
  10. Python 那些永远用不到的对象,我们称之为「垃圾」