JMeter是一款非常不错的免费开源压力测试工具,越来越多的公司在使用。不过,在使用过程中可能会存在一些问题,比如:GUI模式非常消耗资源,单个客户端测试无法达到目标压力。而使用非 GUI 模式,即命令行模式运行JMeter测试脚本能够大大缩减所需要的系统资源,使用远程启动模式也可以像Loadrunner那样进行分布式测试。下面跟随小编一起来看看吧。

工具/原料

 
  • JMeter安装包
  • 一台客户机
  • 一台服务器

非GUI模式下运行JMeter

 
  1. 1

    非GUI模式包括在Windows和Linux下运行,小编在这里演示Windows下使用DOS命令运行,Linux下与之类似。

  2. 2

    使用Badboy录制脚本导入JMeter后调试脚本正常运行,并配置好线程数、循环数、调度器等,如下图:

  3. 3

    在命令行中输入:cmd进入DOS命令窗口,再进入JMeter安装的bin目录,如下图:

  4. 4

    DOS命令执行语法:jmeter -n -t <testplan filename> -l <listener filename>。

    --当前目录运行

    JMeter 默认去当前目录寻找脚本文件,并把日志记录在当前目录。如果在D:\E\02_Test\A2_性能测试\JMeter\apache-jmeter-2.13\bin目录下执行以上命令,JMeter会去该目录下寻找product_select.jmx脚本并把执行结果放在该目录。

    --其他目录运行

    如果脚本在其他目录,并且执行结果存放到其他目录,需要使用绝对路径,如:jmeter -n -t D:\E\02_Test\A2_性能测试\JMeter\JMeter脚本\product_select.jmx -l D:\E\02_Test\A2_性能测试\JMeter\JMeter测试结果\product_select_20160311001.jtl

  5. 5

    product_select_20160311001.jtl是刚才执行测试的结果,使用JMeter图形界面打开即可看到查看详细报告内容,如下图:

    END

远程启动JMeter

 
  1. 1

    JMeter客户端和JMeter远程服务器安装好JMeter,并配置JVM环境变量,使用java -version命令来检测JDK是否安装成功,如下图:

  2. 2

    JMeter客户端和JMeter远程服务器网络环境能够互通,使用ping命令来检测,小编这里客户端IP为:192.168.20.242,服务端为:192.168.5.90,检测结果如下:

  3. 3

    在JMeter远程服务器上运行JMETER_HOME/bin/jmeter-server (UNIX)或者JMETER_HOME/bin/jmeter-server.bat(Windows)脚本,小编这里是UNIX服务器,使用命令:./jmeter-server -Djava.rmi.server.hostname=192.168.5.90,如下图:

  4. 4

    在JMeter客户端上修改/bin/jmeter.properties文件,找到属性"remote_hosts",使用JMeter远程服务器的IP地址作为其属性值。可以添加多个服务器的IP地址,以逗号作为分隔。

    例如:

    #remote_hosts=127.0.0.1

    remote_hosts=192.168.5.90:1099,192.168.5.91:1099,192.168.5.92:1099

  5. 5

    在JMeter客户端上远程启动,JMeter客户端会自动向JMeter远程服务器上分发测试计划,可以查看远程服务器执行情况,执行完成后在客户端可以查看具体执行结果,如下图:

    END

注意事项

 
  • 非GUI模式下运行JMeter和远程启动JMeter都要先配置好JMeter测试策略

非GUI模式下运行JMeter和远程启动JMeter的更多相关文章

  1. jmeter 非GUI模式下传参

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

  2. 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 ...

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

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

  4. 让WebBrowser在非兼容模式下运行

    32 bit: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_ ...

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

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

  6. Jmeter非GUI模式运行

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

  7. Jmeter使用非 GUI 模式,即命令行模式运行实例讲

    转载:http://www.cnblogs.com/leeboke/p/5238269.html 参考资料:https://girliemangalo.wordpress.com/2009/10/29 ...

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

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

  9. Jmeter(非GUI模式)教程

    前言 使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源.优点如下:1.节约系统资源:无需启动界面,节约系统资源 2.便捷快速:仅需启动命令行,输入命令便可执行 ...

随机推荐

  1. andorid studio 环境搭建

    1 安装jdk,配置jdk的环境变量http://www.cnblogs.com/liuhongfeng/p/4177568.html(通过java ,javac, java -version来察看j ...

  2. bootstrap 中dropmenu不起作用

    今天在使用bootstrap发现dropmenu一直不起作用,代码是从官网拷贝过来. 网上查找可以用的页面进行一点点的去除分析,发现竟然是顺序反了导致的. 在使用dropmenu时需要引入jquery ...

  3. C++单例模式实例

    定义:在某些情况下,我们设计中的对象只需要一个,比方说:线程池(threadpool).缓存(cache).对话框.处理偏好设置和注册表对象.日志对象.充当打印机.显卡等设备的驱动程序的对象等.事实上 ...

  4. 升级springboot 2.x 踩过的坑——跨域导致session问题

    目前IT界主流前后端分离,但是在分离过程中一定会存在跨域的问题. 什么是跨域? 是指浏览器从一个域名的网页去请求另一个域名的资源时,域名.端口.协议任一不同,都是跨域. 做过web后台的童鞋都知道,跨 ...

  5. Docker 使用指南—— 基本操作

    版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/98来源:腾云阁 https://www.qcloud ...

  6. JavaWeb学习总结(十七)——JSP中的九个内置对象(转)

    一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...

  7. 【HDOJ6224】Legends of the Three Kingdoms(概率DP)

    题意:三国杀,给定4个白板武将的血量,4个角色轮流行动,每回合行动时如果该人存活则可以选择使阵营不同的角色血量-1,血量为0则死亡.每个人按自己获胜概率最大化行动,如果有多种方案概率相同则等概率选择这 ...

  8. Java后端WebSocket的Tomcat实现 html5 WebSocket 实时聊天

    WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据.Tomcat7.0.47上才能运行. 需要添加Tomcat里lib目 ...

  9. js-数字渐增到指定的数字,在指定的时间内完成(有动画效果哦)插件jquery.animateNumber.js

    本来在项目中我自己实现的效果是数字由0渐增到指定的数字就好. 但是,最终效果不理想! Why? 最终指定的数字太大了,TMMD,滚动好久就不到,那用户想看自己有多少钱了,那不是就一直等着!!!所以这个 ...

  10. Spring Boot + Elastic stack 记录日志

    原文链接:https://piotrminkowski.wordpress.com/2019/05/07/logging-with-spring-boot-and-elastic-stack/ 作者: ...