jmeter的使用

Jmeter简介

jmeter基本概念

Apache JMeter是Apache组织开发的基于Java的压力测试工具。

为什么使用jmeter

开源,免费,基于Java编写,可集成到其他系统可拓展各个功能插件

支持接口测试,压力(负载和压力)测试等多种功能,支持录制回放,

入门简单相较于自己编写框架活其他开源工具,有较为完善的UI界面,便于接口调试

多平台支持,可在Linux,Windows,Mac上运行

支持多协议

jmeter的作用

接口测试

性能测试

压力测试

Web自动化测试

数据库测试

Jmeter修改为中文


jmeter更改外观


创建线程组


线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。

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

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

循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。

调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)

持续时间(秒):测试持续时间,会覆盖结束时间

启动延迟(秒):测试延迟启动时间,会覆盖启动时间

启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会覆盖它。

结束时间:测试结束时间,持续时间会覆盖它。


创建http请求

指定请求域名,请求路径

一个HTTP请求有着许多的配置参数,下面将详细介绍:

名称:本属性用于标识一个取样器,建议使用一个有意义的名称。

注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。

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

端口号:目标服务器的端口号。

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

Content encoding :内容的编码方式,默认值为iso8859

路径:目标URL路径(不包括服务器地址和端口)

Http请求

添加线程组

在线程组里面添加http请求

http中添加值

结果输出

用户定义的变量

添加线程组

在线程组里面添加http请求

添加用户变量


Jmeter的对数据库链接(对数据库进行压力测试):

测试数据的来源:

a.复用开发的原有数据 b.复用线上的真实数据c.直接使用线上数据 

d.测试人员手动添加 e.产品或者是运营提供数据

DBC驱动包链接:

链接:https://pan.baidu.com/s/1P_jAt2C0lMnITjcRd5OeFg

提取码:ab12

Jmeter需要使用JDBC功能时,把解压好的jar包放在(jmeter的lib路径)即可。

1.打开jmeter,先创建线程组。

2.测试计划->添加->配置元件->JDBC Connection Configuration

3.然后第一个红框随便写,第二个红框配置JDBC数据库连接

Database URL:  jdbc:mysql://替换ip地址:3306/数据库名

配置完成就可以执行数据库了。

4.线程组下面添加JDBC sample,在红框里输入第三步里的输入的值

5.查看结果树,显示这样就已经连接数据库,可以操作数据库数据了

****注意:query type类型不同则写sql语句不同****

Jemter的二种录制方法:

一,Badboy(PC端)

Badboy下载地址:链接:https://pan.baidu.com/s/1UNDfT8btdyHt3EE6gKCjzg

提取码:ab12

Badboy是一款不错web自动化测试工具,利用它来录制脚本,并且录制的脚本可以直接保存为JMeter文件来使用。

Badboy  version 2.0.5

通过Badboy来录制脚本

1.打开badboy ,点击红色按钮,在地址栏输入被测项目地址。

录制完后,点击旁边的黑色按钮结束录制。

2.选择文件,Export to Jmeter 保存.jmx类型文件

3.打开Jmter,打开“文件”->‘打开’选择刚保存的.jmx类型文件。

Badboy下载完成打开页面如下:

二,使用Jmeter自身的代理录制脚本(移动端)

1.打开jemter,创建一个线程

2.添加代理服务器,点击 “工作台”,然后右键,根据如下图步骤,添加一个代理服务器。

3.设置端口以及录制地址

4.通过模拟机配置端口号就可以完成链接

Jemter提取器:

一、正则表达式提取器

步骤:右键“HTTP请求”->添加->后置处理器->正则表达式提取

下面是正则表达式各参数值的含义:

1.引用名称:在HTTP等请求中,引用此数据,需要用到的名称

2.正则表达式:用于将需要的数据提取出来

3.模板:$ 1$ 这是固定格式

4.匹配数值:0代表随机取值,1代表第一值,n代表第n个值

5.缺省值:如果正则表达式没有搜到值,则使用此缺省值

正则正则表达式的格式:字符串形式"token":"(.+?)" 数字形式 “taken”:[(0-9)+]

( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 ( 和 )。

匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 +。

. 匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 . 。

? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用?

二、JSON提取器

步骤:右键“HTTP请求”->添加->后置处理器->JSON提取器

下面是JSON提取器各参数值的含义:

1.引用名称:在HTTP等请求中,引用此数据,需要用到的名称

2.提取格式:$data[0].name

3.匹配数值:0代表随机取值,1代表第一值,n代表第n个值

4.缺省值:如果正则表达式没有搜到值,则使用此缺省值

json提取格式json讲解:

1.json串 []表示对象组成的数组,{}表示对象。

2.对象里包含多个 “属性”:属性值。属性值可以是值,或数组,或对象。

3.JSON Extractor使用json path表达式匹配,可以一次取多个变量值。$表示响应的根对象。取子对象或对象的属性用. 取数组里的对象用[],数组索引从0开始。

Jemter定时器:

 一,固定定时器

让每个线程在请求之前按相同的指定时间停顿,可以使用这个定时器;需要注意,固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间。

二,高斯随机定时器

如需要每个线程在请求前按随机时间停顿,那么使用这个定时器,图表示暂停时间会分布在100到400之间

笔记

负载和压力的区别:

负载测试:在一定的工作负荷下,给系统造成du的负zhi荷及系统响应的时间。

压力测试:在一定的负荷条件下,长时间连续运行系统给系统性能造成的影响

TPS和QPS的区别:

tps可以理解为是每秒对事务的处理的能力  qps是每秒对服务器的查询能力


性能测试web端和app端测试

Jmetere的断言:

断言用来判断接口的返回值是否匹配

在线程租中进行添加断言--响应断言并将json放入到响应结果中在察看结果树中来

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