Jmeter--2小时搞定入门以及基本使用(含高并发测试,高频率测试)
创始人
2024-05-31 10:15:38
0

1 入门

1.1 JMeter简介

  1. 概念
  • 可以对服务器、网络或对象模拟巨大的负载
  • 通过创建带有断言的脚本来验证程序是否能够返回期望的结果
  1. 优点

  2. 缺点

  • 不支持IP欺骗
  • 无法前端的JS程序,无法验证UI界面,一般用来测试接口

1.2 JMeter安装

  1. 下载解压

  2. 设置中文乱码

去jmeter的properties中设置下
在这里插入图片描述

  1. 启动

bin下的bat文件启动

在这里插入图片描述

在这里插入图片描述

1.3 项目简介

  1. restful语法功能

在这里插入图片描述

1.4 环境搭建

JDK和Python

2 JMeter使用

2.1 基本使用

  1. 先保存

在这里插入图片描述

  1. 添加
  • 右击添加线程组

在这里插入图片描述

  • 添加取样器
    在这里插入图片描述
  1. 更名

名称可以随便改

在这里插入图片描述

  1. 填写

在这里插入图片描述

在这里插入图片描述

  1. 查看结果

在测试结果获取所有中右击添加监听器:查看结果树

在这里插入图片描述

  1. 执行

在这里插入图片描述

  1. 查看

换个形式看

在这里插入图片描述

在这里插入图片描述

2.2 线程组相关

  1. 概念

一个进程可以包含多个线程组,一个线程组可以包含多个线程

  1. 新建线程组

在这里插入图片描述

  1. 新建线程:http请求

在这里插入图片描述

  1. 再加一个:http请求

或者直接再点击线程组后,ctrl+c,ctrl+v

在这里插入图片描述

  1. 反复

再新建一个线程组,里面再加两个http请求

线程组也可以cv,不过也要点击进程那边再进行

成这样

在这里插入图片描述

2.3 并发执行和顺序执行

  1. 概念
  • 并发执行:多个线程同时执行
  • 顺序执行:多个线程顺序执行
  1. 新建线程组以及线程
  2. 新建查看结果树
  3. 运行
  • 不按照顺序,就是并发执行
    在这里插入图片描述

  • 顺序执行

在进程里面:独立运行每个线程组 打勾即可

在这里插入图片描述

再去运行就可以了

在这里插入图片描述

2.4 两个特殊线程组

  1. 分类
  • setUp线程组

最优先执行的线程组

类比军人

  • tearDown线程组

最后执行的线程组

类比难忘今宵

  1. 操作
  • 添加线程和线程组,以及察看结果树

    在这里插入图片描述

  • 执行

在这里插入图片描述

  • 三个线程组执行

注意结果顺序 1,3,2

在这里插入图片描述

2.5 线程组常用属性

  1. 总览
    在这里插入图片描述
  • 线程数:模拟用户数
  • ramp-up时间:程序准备时间
  • 循环次数:相当于线程数执行几遍,即每个用户请求几次

如果线程数为2,循环次数为3,那么察看结果树就会返回6个请求

在这里插入图片描述

如果循环次数选择永远,好家伙直接一直请求

  • 调度器配置

勾选调度器后,才可以进行持续时间和启动延迟的设置,如果持续时间选择2秒,就是只会勾选执行2秒钟

2.6 http请求默认值

  1. 设置
    在这里插入图片描述

在这里插入图片描述

  1. 如果多个
    在这里插入图片描述

出现的情况是:如果复制粘贴多个,那么设置都一个样子,浪费设置

  1. 简化

右击进程,选择http请求默认值

在这里插入图片描述

然后在里面设置重复的属性

在这里插入图片描述

然后其他的http就不用写这些了,复用的已经进行封装了

在这里插入图片描述

2.7 信息头管理器

  1. http设置
  • 基本设置

在这里插入图片描述

  • 消息体设置

在这里插入图片描述

但是报错,不知道你传入的是什么类型,所以要去设置HTTP信息头管理器

  1. HTTP信息头管理器添加位置
  • 右击进程添加

在这里插入图片描述

  • 添加json类型

在这里插入图片描述

  1. 重新执行

就能识别json了

在这里插入图片描述

2.8 参数化

  1. 场景

一个一个请求提交太慢了

2.8.1 用户定义变量

  1. 设置位置

在这里插入图片描述

在这里插入图片描述

  1. 设置变量对应内容

在这里插入图片描述

  1. 调用

返回http请求然后路径写${xx}变量即可
在这里插入图片描述

  1. 看下结果

在这里插入图片描述

在这里插入图片描述

2.8.2 CSV数据文件设置

  1. 作用

可是实现批量操作形式

  1. 步骤

在这里插入图片描述

  1. 前置设置

设置线程组以及HTTP请求(POST形式)以及察看结果树以及HTTP信息头管理器(为了识别json数据)

  1. 批量添加
  • 目的:把数据批量添加到数据库

  • 数据

在这里插入图片描述

  • 批量设置

在这里插入图片描述

在这里插入图片描述

  • 在线程组钟将循环次数设置为永远

因为可能不知道数据有几条,如果你知道有几条,那就写几

在这里插入图片描述

2.8.3 用户参数实现批量添加

  1. 总览

与csv方式的对比是不用csv文件也可以实现批量添加,一般工作用csv,这边用用户参数

  1. 设置
  • 添加用户参数

在这里插入图片描述

  • 用户参数内容

在这里插入图片描述

  • 线程组设置

设置3个用户试试看,循环次数不弄了
在这里插入图片描述

  • 传参json变量要进行替换

在这里插入图片描述

  1. 执行
    数据加进去了
    在这里插入图片描述

2.8.4 函数

  1. 计数函数count
  • 效果

请求的结果后面自带个数

  • 操作

在这里插入图片描述

拷贝走代码${_counter(true,)}

在这里插入图片描述

放到Http请求最后面

在这里插入图片描述

  • 执行

变成每个用户自己请求次数自己计算了,如果选flase就是1-6,不管哪一个用户

在这里插入图片描述

  1. 随机函数Random
  • 操作

把前面的禁用掉

在这里插入图片描述

一样的地方

在这里插入图片描述

设置random,1-3闭区间

在这里插入图片描述

  • 结果

在这里插入图片描述

  1. 时间函数time
  • 操作

当前时间戳

在这里插入图片描述

自己设置的格式

在这里插入图片描述

2.9 直连数据库

  1. 添加jar包

在这里插入图片描述

  1. 操作
  • 添加JDBC的Request

在这里插入图片描述

  • 添加数据库连接池

在这里插入图片描述

填入数据库的信息
在这里插入图片描述

  • 回到JDBC的Request写sql

在这里插入图片描述

  • 执行

按下绿色按钮

然后看下结果

在这里插入图片描述

  1. 结果在百度搜索
  • 增加一个返回的变量

在这里插入图片描述

  • select的结果

发现都加上了val前缀

在这里插入图片描述

  1. 请求百度

在这里插入图片描述

  1. 看下结果
  • 看下怎么请求的

在这里插入图片描述

  • 看下response的结果

在这里插入图片描述

2.10 断言

  1. 概念

让程序代替人工判断响应结果是否符合预期

在这里插入图片描述

  1. 响应断言
  • 添加

在这里插入图片描述

  • 断言设置

常用响应文本和响应代码,设置筛选老张

在这里插入图片描述

  • 结果

如果包含老张了,你执行的时候就不会报错

在这里插入图片描述

如果没有就报错,像这样

还有其他规则,相等就是要一模一样,一般常用相等和包含,否就是取非

甚至也可以测响应码

在这里插入图片描述

在这里插入图片描述

  1. 大小断言
  • 总览

在这里插入图片描述

  • 大小对应的就是

在这里插入图片描述

  • 响应代码

是大小,不是200的字符,所以写3个字符

在这里插入图片描述

  • 响应消息

对应message的ok

在这里插入图片描述

但是来这边只能写2字符表示ok

在这里插入图片描述

  1. 断言持续时间

表示是不是在5ms以内

在这里插入图片描述

3 性能测试

3.1 高并发

  1. 前置准备
  • HTTP请求

在这里插入图片描述

  1. 添加同步定时器

在这里插入图片描述

  1. 设置下线程组

模拟一百人

在这里插入图片描述

  1. 同步定时器设置
  • 设置用户组数量

如果一百人分两次访问服务器,这边就写五十,类比公交车上的位置够不够

在这里插入图片描述

  • 设置超时时间

不要写零,写零的话后面剩下的不够数量会出现超等

在这里插入图片描述

  1. 结果

不要用察看结果树了,用聚合报告,看平均值,异常情况,吞吐量

在这里插入图片描述

在这里插入图片描述

3.1 高频率

  1. 场景

在这里插入图片描述

QPS每秒钟二十次

  1. 添加请求/聚合报告

在这里插入图片描述

在这里插入图片描述

  1. 添加常数吞吐量定时器

在这里插入图片描述

在这里插入图片描述

  1. 线程组设置

二十x十五

在这里插入图片描述

  1. 执行

在这里插入图片描述

相关内容

热门资讯

安卓系统小手表怎么用,享受智能... 你有没有发现,现在的小手表越来越智能了,尤其是安卓系统的小手表,功能强大到让人惊叹。想象手腕上一块小...
安卓系统为什么老是重启,安卓系... 手机突然重启,是不是又闹脾气了?安卓系统为什么老是重启,这个问题让不少小伙伴头疼不已。今天,就让我带...
米家苹果安卓系统,融合智能生活... 你知道吗?最近在智能家居圈子里,米家与苹果的合作可是引起了不小的轰动呢!咱们就来聊聊这个话题,看看米...
中国人不用安卓系统,为何中国人... 你知道吗?在这个科技飞速发展的时代,手机已经成为了我们生活中不可或缺的一部分。但是,你知道吗?有一群...
电脑玩安卓游戏系统,打造无缝体... 你有没有想过,你的电脑竟然也能玩安卓游戏呢?没错,你没听错,就是那个我们平时手机上玩的安卓游戏,现在...
能媲美ios的安卓系统,揭秘媲... 你知道吗?在手机江湖里,安卓和iOS一直是一对相爱相杀的“情敌”。虽然iOS系统以其流畅性和安全性著...
苹果和安卓系统的来源,探寻两大... 你有没有想过,我们每天离不开的手机,那个小小的屏幕里,竟然藏着两个如此不同的世界?一个是由苹果公司精...
安卓变苹果最新系统,探索最新i... 你知道吗?最近安卓用户们都在热议一件大事——安卓系统终于要变脸了,而且这次的变化可是相当大呢!没错,...
王者定位怎么关安卓系统,轻松实... 你是不是也和我一样,对王者荣耀这款游戏爱得深沉呢?不过,有时候游戏里的设置让人头疼,比如安卓系统的王...
树莓派安卓系统流畅,打造便携式... 亲爱的读者们,你是否曾想过,将树莓派与安卓系统结合,会擦出怎样的火花呢?今天,就让我带你一起探索这个...
安卓系统智能机顶盒,引领家庭娱... 你有没有想过,家里的电视也能变得智能起来?没错,就是那个陪伴我们多年的老电视,现在也能摇身一变,成为...
安卓系统很差了吗现在,性能优劣... 最近是不是有不少朋友在讨论安卓系统的问题呢?有人说它越来越差了,也有人觉得它还是那个熟悉的“老朋友”...
安卓系统uc安装包,Andro... 你有没有发现,手机里的安卓系统越来越强大了?今天,咱们就来聊聊这个话题——安卓系统中的UC安装包。你...
安卓系统谷歌能删吗,谷歌能否删... 你有没有想过,那个一直陪伴你手机生活的安卓系统,它背后的谷歌爸爸,是不是也能被你随意删掉呢?这可不是...
安卓系统会不会更耗电,解析其功... 你有没有发现,手机用着用着,电池就有点不给力了?尤其是那些用安卓系统的手机,有时候感觉电就像流水一样...
安卓系统中无效目录,安卓系统无... 你有没有遇到过在安卓系统中,明明文件夹就在那里,但是就是找不到的情况?别急,今天就来给你揭秘安卓系统...
国产安卓机哪个系统好用,探寻最... 你有没有想过,国产安卓机哪个系统最好用呢?这可是个让人纠结的问题,毕竟每个系统都有它的特色和亮点。今...
安卓系统cpua9,引领性能与... 你有没有发现,最近你的安卓手机运行得是不是比以前顺畅多了?这可多亏了那个强大的安卓系统CPUA9啊!...
安卓系统usb驱动程序,功能、... 你有没有遇到过这种情况:手机里存了那么多宝贝照片和视频,想传输到电脑上保存,结果电脑却像个小顽皮,死...
安卓操作系统怎么关闭,轻松关闭... 手机里的安卓操作系统是不是有时候让你觉得有点儿烦呢?别急,今天就来手把手教你如何轻松关闭安卓操作系统...