原文作者---后知者

原文地址:http://www.cnblogs.com/houzhizhe/p/8119735.html

【后知者的故事】:针对单一接口压测时出现了从未遇到的问题,设好并发量后用调度器控制脚本的开始和结束,但在脚本应该自动结束时间,脚本却停不下来,手动stop报告就会有error率,卡了我很久很久不能解决,网络上也基本查不到具体状况的解决办法,师傅说可以强杀进程,但我想进程杀掉了我可怎么看报告呢,忽然想起在linux运行jmeter就是没界面的,把运行的结果存到一个.jtl文件里回到Win系统下用Jmeter界面可以打开看报告,那Win也应该能像linux那样保存结果到.jtl文件,那不就能绕开常规的界面执行和查看报告了。可尝试这个办法。结果哈哈O(∩_∩)O哈哈~

无界面单机压测

为方便管理起见,bin目录下创建一个文件夹testplan用来存放脚本(.jmx文件),再创建一个文件夹testresult用来存放脚本执行后的结果(.jtl文件)
结果文件是可以在Jmeter可视化界面打开的,它保存了脚本执行过程中的各种结果非常全面,结果树、聚合报告、表格查看结果等都可以将它打开看到响应的数据。

执行方法是:命令到bin目录下,在执行如下命令,
jmeter.bat -n -t testplan/new_time1.jmx -l testresult/new_time1_100_180s.jtl

在脚本运行过程中,由于无界面,命令窗口会每隔一段时间打印一下当前的运行状态,你会在窗口中看到类似下面的信息:

summary+ 是开始这个时点的报告;

summary= 是总结它之前的报告,呈现出的是当前时点之前总的情况,通常是均值;

最后一个summary=是本次压测总的情况,如果脚本按时正常结束的话,最后一次summary里面的值应该和你从GUI打开聚合报告或概括报告的值一致。

正常结束应该是这样的

无界面分布式压测

当并发量过大单机无法承担需要做分布式压测,分布式的配置同以前文章介绍的一样,再次不做赘述,(一定要在终端机添加环境变量 JMETER_HOME到bin的父目录)。

执行办法是:

先把脚本和参数文件存放到各台终端相同目录下,

将每台终端的jmerter-server.bat打开等待主机发号施令,

在主机命令窗口键入类似以下命令:meter.bat -n -t testplan/new_time1_10104_100_180s.jmx -R 192.168.6.198:1099 -l testresult/new_time1_10104_100_180s.jtl

命令中-r 代表远程 remote ,后面跟随的是每台终端机jmeter-server窗口显示的 ip 和默认端口,同样,多台终端之间由逗号隔开,其他都与单机命令一样。

于是你可以看到各台终端机的jmeter-server窗口有关运行和阶段性summary的信息直至运行结束。

总体的报告都在你主机保存的那个.jtl文件里。

无界面运行Jmeter压测脚本 --后知者的更多相关文章

  1. 无界面运行Jmeter压测脚本

    今天在针对单一接口压测时出现了从未遇到的问题,设好并发量后用调度器控制脚本的开始和结束,但在脚本应该自动结束时间,脚本却停不下来,手动stop报告就会有error率,卡了我很久很久不能解决,网络上也基 ...

  2. 一文揭秘测试平台中是如何将测试用例一键转化Jmeter压测脚本

    ​    ​接上篇,一键转化将接口测试平台测试用例转化成Jmeter压测脚本思路,这里我首先在java 上面做了一个简单的实验,看看 转化的中间遇到的问题,这里呢,我只是给了一个简单的demo 版本, ...

  3. jmeter压测脚本编写与静态文件处理

    一.压测脚本编写 概述:工具为谷歌浏览器-->F12-->Network,访问被测站点,通过其中的请求的地方来构造压测脚本 二.静态文件处理 概述:静态文件包括css/js/图片等,它们有 ...

  4. java编写jmeter压测脚本

    目前项目中接触的比较多的是接口测试,功能测个差不多后会对部分接口进行压测,采用的是java编写脚本,导入jmeter进行压测. 使用到的jmeter的相关包 写一个测试类,继承AbstractJava ...

  5. jmeter压测、操作数据库、分布式linux下运行、webservice接口测试、charles抓包

    一.jmeter压测 在线程组中设置好,然后添加http请求,t添加聚合报告查看压力测试结果,如图: 一般压测时间10-15分钟,如果是稳定性测试,一般n*12小时,这些并发用户一直在请求. tps: ...

  6. JMeter扩展Java请求实现WebRTC本地音视频推流压测脚本

    WebRTC是Web Real-Time Communication缩写,指网页即时通讯,是一个支持Web浏览器进行实时语音或视频对话的API,实现了基于网页的视频会议,比如声网的Agora Web ...

  7. jmeter压测、操作数据库、分布式、 linux下运行的简单介绍

    一.jmeter压测 1.如何压测 常规性能压测:10-15分钟 稳定性测试:一周.2天等 如果想要压测10分钟,勾选永远,勾选调度器,填写600秒.也可以使用固定启动时间. 2.tps.响应时间 ( ...

  8. wrk,ab,locust,Jmeter 压测结果比较

    背景: 项目需要对一批接口进行压测,要求是接口的QPS(Quest Per Second每秒请求数)达到6万以上由于楼主一直使用的压力测试工具是jmeter,但是jmeter单台电脑无法达到6万的QP ...

  9. jmeter压测之添加负载机

    jmeter压测基本介绍一般基准测试(基准测试时间一般为5分钟)后压测的时间是10-15分钟: 实施测试之前要拿到测试指标 例如:tps要达到多少响应时间要达到多少并发数要达到多少TPS :服务端每秒 ...

随机推荐

  1. C++连接mysql数据库的两种方法

    本文主要介绍了C++连接mysql数据库的两种方法,希望通过本文,能对你有所帮助,一起来看. 现在正做一个接口,通过不同的连接字符串操作不同的数据库.要用到mysql数据库,以前没用过这个数据库,用a ...

  2. HDU 6055 17多校 Regular polygon(计算几何)

    Problem Description On a two-dimensional plane, give you n integer points. Your task is to figure ou ...

  3. Linux shell脚本中shift

    Linux shell脚本中shift的用法说明 shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理(常见于Linux中各种程序的启动脚本). ...

  4. Spring 配置文件

    <?xml version="1.0" encoding="UTF-8" ?> <beans> <bean id=...> ...

  5. php操作redis(转)

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis支持的数据类型有 Stirng(字符串), Lis ...

  6. LINUX添加磁盘

    博客网站原因,图片不能很好插入,望谅解 第一步:设置加载硬盘.由于是虚拟硬盘大小,不会一开始直接占用全部空间,使用多少占用多少,为了避免后期磁盘满前期设计大容量 第二步加载查看磁盘: 再执行fdisk ...

  7. USB抓包工具Bus Hound

    /********************************************************************** * USB抓包工具Bus Hound * 说明: * 之 ...

  8. 【leetcode】27-RemoveElement

    problem RemoveElement class Solution { public: int removeElement(vector<int>& nums, int va ...

  9. SSH升级到7.7

    #!/bin/bash#删除旧版ssh包 危险操作,不删除也可以安装,建议跳过此操作.#rpm -e `rpm -qa | grep openssh` #安装zlib依赖包wget -c http:/ ...

  10. HTML5 canvas 内部元素事件响应

    HTML5 canvas 内部元素事件响应 isPointInPath 只能拿当前上下文的路径 重画每个部分 都isPointInPath判断