jmeter是基于JVM(最新版本基于jdk8+)的压测工具包。提供了丰富的工具来设置压测计划,执行压测任务和生成压测报告。

我这边使用的是windows10平台。

整个流程如下:

1.下载jmeter

打开https://jmeter.apache.org/download_jmeter.cgi,找到jmeter二进制包的下载地址,点击进行下载。

下载的内容是一个压缩包。解压后的内容如下:

2.运行jmeter

进入bin目录执行jmeter.bat文件。

jmeter GUI工具界面如下:

如果觉得界面英文看得不习惯,也可以通过options->Choose Language选择中文界面

3.配置jmeter

3.1 配置压测线程组

jmeter是通过运行多线程的方式进行压测的。提供了线程组的组件方便进行压测线程数量,压测线程启动时间和压测持续次数等配置。

线程组界面的配置参数如下:

3.2 配置压测请求

在配置了线程组之后,就可以在线程组上模拟压测请求了。我这边模拟的是http请求。

压测请求配置界面如下:

jmeter能够使用相关配置(比如函数,CSV文件配置)动态模拟压测请求。

我这边使用random函数来模拟随机请求,保证压测请求不重复。

还可以使用csv文件配置动态请求参数

4.运行压测

GUI工具主要用于进行压测脚本调试。

正式的压测需要把GUI工具配置的内容保存下来,通过jmeter命令进行压测。

jmeter命令如下:

.\jmeter -n -t C:\Users\2451\Desktop\TencentTimRequest.jmx

运行结果如下:

Creating summariser <summary>
Created the tree successfully using C:\Users\2451\Desktop\TencentTimRequest.jmx
Starting the test @ Sat Jun 29 11:40:26 CST 2019 (1561779626828)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary + 108 in 00:00:03 = 35.6/s Avg: 353 Min: 184 Max: 536 Err: 0 (0.00%) Active: 31 Started: 31 Finished: 0
summary + 6044 in 00:00:30 = 201.5/s Avg: 452 Min: 192 Max: 1801 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0
summary = 6152 in 00:00:33 = 186.2/s Avg: 450 Min: 184 Max: 1801 Err: 0 (0.00%)
summary + 6411 in 00:00:30 = 214.4/s Avg: 468 Min: 193 Max: 1626 Err: 0 (0.00%) Active: 100 Started: 100 Finished: 0
summary = 12563 in 00:01:03 = 199.6/s Avg: 459 Min: 184 Max: 1801 Err: 0 (0.00%)
summary + 3779 in 00:00:18 = 211.8/s Avg: 455 Min: 1 Max: 1615 Err: 100 (2.65%) Active: 0 Started: 100 Finished: 100
summary = 16342 in 00:01:21 = 202.3/s Avg: 458 Min: 1 Max: 1801 Err: 100 (0.61%)
Tidying up ... @ Sat Jun 29 11:41:47 CST 2019 (1561779707848)
... end of run
5.生成压测结果

可以通过GUI工具和jmeter命令两种方式查看压测结果: GUI工具通过添加View Results Tree查看压测结果

在运行压测后,可以查看View Results Tree标签内容:

jmeter命令上添加 -l 和 -e -o参数能够指定压测报告目录:

.\jmeter -n -t C:\Users\2451\Desktop\TencentTimRequest.jmx -l repor -e -o C:\Users\2451\Desktop\test_report

————————————————
版权声明:本文为CSDN博主「zuojunyuan」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zuojunyuan/article/details/94152368

jmeter使用教程的更多相关文章

  1. jmeter安装教程与新手入门(附jdk安装教程)

    一.前言 最近要对网站做性能测试,提到了并发数测试,查了下,还是决定使用jmeter来完成这项测试,这里总结了jmeter完整的安装教程,附上新手使用教程. 二.jmeter安装 1.jdk安装(jm ...

  2. JMeter使用教程2——MySQL压测

    之前写过一篇JMeter使用教程,只是介绍了http请求的压力测试,想到MySQL的测试也挺必要的,于是写下这篇记录一下.如果不知道怎么下载和安装,可以看一下上一篇关于JMeter的文章,地址是:ht ...

  3. 【JMeter】教程及技巧汇总(转载)

    转载地址:http://www.hissummer.com/jmeter-summary.html 参考/学习资料:http://www.yiibai.com/jmeter/jmeter_build_ ...

  4. JMeter系列教程

    认识JMeter工具 JMeter常用元件功能介绍 JMeter线程组 JMeter脚本三种录制方法 Jmeter组件介绍及其作用域和执行顺序 JMeter参数化 JMeter集合点 JMeter关联 ...

  5. JMETER安装教程

    jmeter的安装教程 1:安装jdk并且配置好环境变量,此处就不做赘述(前面的文档中有) 2:下载jmeter文件和jmeter的插件文件 JMeter:http://jmeter.apache.o ...

  6. 压测工具 jmeter入门教程及汉化修改

    Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件.相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工 ...

  7. 压力测试工具JMeter入门教程

    1.Jmeter 概要描叙 jmeter 是一款专门用于功能测试和压力测试的轻量级测试开发平台.多数情况下是用作压力测试,该测试工具在阿里巴巴有着广泛的使用,估计是不要钱吧,哈哈,功能上来说,整个平台 ...

  8. jmeter接口测试教程

    一.Jmeter接口测试步骤: 1.添加线程组

  9. JMeter基础教程3:脚本录制篇

    对于一些JMeter初学者来说,录制脚本可能是最容易掌握的技能之一.虽然我不建议录制性能脚本(因为录制的脚本比较混乱,必须要通过二次处理才可正常使用),但有时做总比不做要好,是吧?下面我们详细介绍使用 ...

  10. JMeter基础教程2:正则表达式使用

    0. 正则表达式简介 正则表达式,又称规则表达式(Regular Expression,在代码中通常简写为regex.regexp或RE)描述了一种字符串匹配的模式(pattern),可以用来检查一个 ...

随机推荐

  1. 【论文排版工具】——LaTeX的安装及使用(MiKTeX+TexStudio+Windows)

    版权声明:本文为CSDN博主「豆豆花」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/weixin_405 ...

  2. 【LEETCODE】67、分治递归,medium&hard级别,题目:215、312

    我被这些题整哭了,你呢??? 日了狗啊...... 好难啊.... 按照这个样子搞,不用找工作了,回家放牛去....... package y2019.Algorithm.divideandconqu ...

  3. ZYNQ笔记(1):PL端——led灯

    ZYNQ分为PS和PL,此博客实际上是FPGA中一个完整的FPGA工程的创建. PS:处理系统 (Processing System) 即ARM的Soc部分 PL:可编程逻辑(Programable ...

  4. 【Linux】Ubuntu修改root用户密码

    使用vmware安装ubuntu的时候,安装完之后发现没有root用户密码,只有新建用户,这个时候需要重新设置root用户密码 在新建用户下面运行 sudo passwd root

  5. java之mybatis之占位符

    1.mybatis中有两种占位符 #{}和 ${}. 2. #{} 占位符是为了获取值,获取的值用在 where 语句后,insert 语句后,update 语句. #{} 获取值,是根据值的名称取值 ...

  6. NMS的实现代码详解

    NMS代码说明(来自Fast-RCNN) 个人觉得NMS包含很多框,其坐标为(x1,y1,x2,y2),每个框对应了一个score,我们将按照score得分降序,并将第一个最高的score的框(我们叫 ...

  7. Vue学习之Webpack基本使用小结(十三)

    一.新建dist 文件夹: 二.新建src文件夹: 在其下面创建 css .js .images文件夹及 index.html.main.js(这是项目Js的主入口) 三.html中简单创建一个列表: ...

  8. 因改漏洞而引申了解的Cookie机制!

    近期因为修改漏洞:Appscan扫描漏洞:加密会话(SSL)Cookie中缺少Secure属性,而涉及到Cookie有关的知识,现结合该漏洞的修复过程和了解的cookie知识总结一下. 一.加密会话( ...

  9. Android-----Intent通过startActivityForResult(Intent intent , int 标志符)启动新的Activity

    我们都了解使用 startActivity(intent) 新的activity只能传递数据,却无法返回数据,返回新activity返回的数据我们可以替换startActivityForResult( ...

  10. iOS中copy和strong修饰符的区别

    iOS中copy和strong修饰符的区别 //用copys修饰的生成的都是不可变的对象 ,如果调用可变类型方法的直接报错 @property(nonatomic,copy)NSString * cp ...