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. MySQL学习一:建表

    目标:创建三张表,学生表student(sid,name,gender), 课程表course(cid,name), 分数mark(mid, sid, cid, gender); 要求sid, cid ...

  2. python:函数的参数传递方法演示

    """ 函数的参数传递方法演示 """ #1.位置传参 def normal(a, b, c): print("1.位置传参:&q ...

  3. python3:使用for循环打印九九乘法表

    for i in range(1, 10): for j in range(1, i + 1): print(j, '*', i, '=', i * j, end=" ") #en ...

  4. sublime text 打开总是弹框报错Unable to download ChineseLocalizations. Please view the console for more details.解决办法

    本文链接:https://blog.csdn.net/qq_36435508/article/details/92805256 依次点击软件的    Preferences->Package S ...

  5. lsyncd实时同步工具

    简介 Lysncd 实际上是lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过rsync去差异同步,达到实 ...

  6. python_并行与并发、多线程

    问题一: 计算机是如何执行程序指令的? 问题二: 计算机如何实现并发的? 轮询调度实现并发执行 程序1-8轮询完成,才再CPU上运行 问题三: 真正的并行需要依赖什么? 并行需要的核心条件 多进程实现 ...

  7. 回文树/回文自动机(PAM)学习笔记

    回文树(也就是回文自动机)实际上是奇偶两棵树,每一个节点代表一个本质不同的回文子串(一棵树上的串长度全部是奇数,另一棵全部是偶数),原串中每一个本质不同的回文子串都在树上出现一次且仅一次. 一个节点的 ...

  8. springboot使用HttpSessionListener 监听器统计当前在线人数

    概括: request.getSession(true):若存在会话则返回该会话,否则新建一个会话. request.getSession(false):若存在会话则返回该会话,否则返回NULL ht ...

  9. springboot 接口参数校验

    前言 在开发接口的时候,参数校验是必不可少的.参数的类型,长度等规则,在开发初期都应该由产品经理或者技术负责人等来约定.如果不对入参做校验,很有可能会因为一些不合法的参数而导致系统出现异常. 上一篇文 ...

  10. Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手)

    Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手) 一丶CS/BS 架构 C/S: 客户端/服务器    定义:       ...