JMeter的介绍及简单使用

一、JMeter的介绍

JMeter是Apache组织开发的基于Java的压力测试工具。JMeter能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。(Jmeter 开源免费)

1 、进程与线程

线程:是程序执行流的最小单元,是系统独立调度和分配CPU(独立运行)的基本单位。

进程:是资源分配的基本单位。一个进程包括多个线程。

进程与线程

多线程:同一时刻执行多个线程。如,用浏览器一边下载,一边听歌,一边看视频,一边看网页......

多进程:同时执行多个程序。如,同时运行微信,QQ,以及各种浏览器

2、Jmeter性能测试的一些相关概念

(1)  压测:通过逐步加压的方法,使得系统的某些资源达到饱和,甚至失效的状态,简单粗暴的解释就是什么条件能把系统压崩溃。Jmeter通过模拟大量的虚拟用户向服务器产生负载,使服务器的资源处于极限状态下长时间连续运行,以测试服务器在高负载情况下是否能够稳定工作。

(2)  并发:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。也就是说并发是指在一段时间内宏观上多个程序同时运行。(区别于并行,并行是指在同一时刻,有多条指令在多个处理器上同时执行。所以无论从微观还是从宏观来看,二者都是一起执行的。)JMeter是以线程的方式来进行模拟用户的并发访问的。

(3)  并行:当系统有一个以上CPU时,则线程的操作有可能非并发。当一个CPU执行一个线程时,另一个CPU可以执行另一个线程,两个线程互不抢占CPU资源,可以同时进行,这种方式我们称之为并行(Parallel)

(3) 吞吐量(Throughput):是指系统在单位时间处理的请求数量。对于无并发的应用系统而言,吞吐量与响应时间成严格的反比关系,实际此时吞吐量就是响应时间的倒数。对于单用户的系统,响应时间可以很好地度量系统的性能,但对于并发系统,通常需要吞吐量作为性能指标。

(4) QPS每秒查询率(Query Per Second)每秒查询率QPS是对一个特定的查询服务器在规定的查询服务器在规定时间内所处理流量多少的衡量标准。(类似于TPS,只是应用于特定场景的吞吐量)


二、JMeter的组成

JMeter的组成

测试计划:测试脚本根节点,每一个测试脚本都是一个测试计划,名称可以自己定义。

线程组:控制多线程并发,设置虚拟用户。

线程组

断言:预期结果和实际结果比对。

定时器:操作线程时候停顿多长时间之类。

监听器:重要组成部分,可以用来调试脚本,看看是否成功,还可以对资源进行监控。

配置元件: 重要组成部分,可以在里面获取cookie信息之类的配置信息。

后置处理器: 在并发完成后想要做什么。后一个请求用到前一个请求的结果,用后置处理器就可以拿到,放的一个变量里,下一次请求去用。

前置处理器:请求发生前做什么。

逻辑控制器:当一个条件满足时,需要去做的操作。

Sampler:放置请求。

三、JMeter的使用

1、添加线程组

步骤:右键点击“测试计划” -> “添加” -> “线程(用户)” -> “线程组”

线程组参数(线程属性)详解:

(1)  线程数:虚拟用户数。一个虚拟用户占用一个进程或者线程,设置多少虚拟用户数在这里也就是设置多少个线程数。

(2)  Ramp-Up Period(in seconds)准备时长:设置的虚拟用户数需要多长时间全部启动。如果线程数为10,准备时长为2,那么需要2秒钟启动10个线程,也就是每秒钟启动5个线程。

(3)  循环次数:每个线程发送的请求次数。eg:如果线程数为10,循环次数是20,那么每个线程发送20次请求。总请求数为10*20=200。如果勾选“永远”,那么所有线程会一直发送请求,除非手动选择停止运行脚本。

(4)  调度器

持续时间(秒):测试计划持续多长时间

启动延迟(秒):测试计划延长多长时间启动


2、添加HTTP请求

步骤:右键点击“线程组” -> “添加” -> “Sampler” -> “HTTP请求”

(1)  Web服务器

协议:向目标服务器发送HTTP请求协议,可以是HTTP或HTTPS,默认为HTTP

服务器名称或IP :HTTP请求发送的目标服务器名称或IP

端口号:目标服务器的端口号,默认值为80

(2)  Http请求

方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、DELETE等。

路径:目标URL路径(URL中去掉服务器地址、端口及参数后剩余部分)

Content encoding :编码方式,默认为ISO-8859-1编码,这里配置为utf-8

同请求一起发送参数

在请求中发送的URL参数,用户可以将URL中所有参数设置在本表中,表中每行为一个参数(对应URL中的 name=value),注意参数传入中文时需要勾选“编码”


3、添加察看结果树

步骤:右键点击“线程组” -> “添加” -> “监听器” -> “察看结果树”

4、添加用户自定义变量

5、添加断言、断言结果


4、添加聚合报告

聚合报告参数说明:

聚合报告

Label:每个请求的名称,eg:HTTP请求

#样本(#Samples):请求数——表示在这次测试中一共发了多少个请求

平均值(Average):平均响应时间——单个请求的平均响应时间

中位数(Median):所有请求响应时间的中间值

90%~99%百分位(Line):90%~99%用户的响应时间

最小值(Min):最小响应时间

最大值(Max):最大响应时间

异常(Error)%:错误率——错误请求数/请求总数

吞吐量(Throughput):每秒完成的请求数

接收KB/Sec: 每秒从服务器端接收到的数据量

发送 KB/src:每秒从客户端发送的请求的数量。

一般而言,性能测试中我们需要重点关注的数据有: Samples 请求数,Average 平均响应时间,Min 最小响应时间,Max 最大响应时间,Error% 错误率及Throughput 吞吐量。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343