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. 执行

在这里插入图片描述

相关内容

热门资讯

mp3安卓系统前端 你有没有想过,为什么你的手机里那么多音乐,却总是觉得听不到那种纯粹的音乐体验呢?其实,这跟你的手机系...
华为安卓系统苹果ios系统升级 你知道吗?最近手机圈可是热闹非凡呢!华为和苹果这两大巨头又来了一场关于系统升级的较量。今天,就让我带...
安卓系统映射电脑显示,畅享多屏... 你是不是也和我一样,对安卓系统映射电脑显示这个功能充满了好奇?想象你的手机屏幕瞬间变成电脑显示器,是...
tf卡上安装安卓系统,便携式智... 你有没有想过,你的TF卡上也能装个安卓系统?听起来是不是有点不可思议?别急,让我带你一步步探索这个神...
安卓9更新鸿蒙系统卡,鸿蒙系统... 最近你的安卓手机是不是也遇到了卡顿的问题呢?尤其是更新到了安卓9系统后,感觉手机就像老牛拉车一样,慢...
安卓系统wifi热点怎么开 你是不是也和我一样,有时候手机里突然冒出一个想法:“我能不能把手机变成一个WiFi热点呢?”别急,这...
安卓系统照片编辑抠图,释放创意... 你有没有发现,手机里的照片有时候就是需要一点小魔法,才能变得完美无瑕呢?比如说,你想要把照片里的人物...
三星安卓系统和鸿蒙系统,技术融... 亲爱的读者们,今天我们要来聊聊两个在智能手机界颇具影响力的操作系统——三星的安卓系统和华为的鸿蒙系统...
本田车机加装安卓系统,畅享智能... 你有没有想过,你的本田车机其实可以变得更加智能和好玩呢?没错,就是那个平时默默无闻的车载系统,今天就...
安卓系统电源文件在哪,安卓系统... 你有没有遇到过手机电量突然告急,却怎么也找不到电源文件的尴尬时刻?别急,今天就来给你揭秘安卓系统电源...
安卓系统华为平板推荐吗,安卓系... 你最近是不是在考虑入手一款新的平板电脑呢?市面上那么多品牌,各种型号让人眼花缭乱。今天,就让我来给你...
怎么查出手机安卓系统,一探究竟 你有没有想过,你的手机里藏着多少秘密?别担心,我不是要吓你,而是想告诉你,了解自己手机的安卓系统,其...
安卓系统是不是很垃圾,是“垃圾... 最近在网络上看到一个话题,让人忍不住想聊聊:安卓系统是不是很垃圾?这可是个热门话题,毕竟现在手机市场...
公交站牌安卓系统,安卓系统下的... 你有没有发现,最近公交站牌变得不一样了?没错,就是那个我们每天上下班必经的地方,现在竟然悄悄地升级换...
安卓模拟器装系统,轻松打造个性... 你有没有想过,在电脑上也能玩安卓游戏或者使用安卓应用?这可不是天方夜谭,而是可以通过安卓模拟器实现的...
安卓系统变成汉语怎么变,从英语... 你知道吗?安卓系统,这个全球最流行的手机操作系统,最近可是悄悄地来了一场大变身呢!它不仅变得更加智能...
安卓为什么难用鸿蒙系统,探寻其... 你有没有发现,最近手机圈里有个大热门话题,那就是安卓和鸿蒙系统的较量。很多人都在问,为什么安卓手机那...
emui是安卓系统还是鸿蒙系统... 哦,亲爱的读者,你是否曾在手机界面的角落里,瞥见那个独特的EMUI字样,心中不禁好奇:这EMUI,究...
安卓系统能用联通卡吗 你有没有想过,你的安卓手机能不能用联通的卡呢?这个问题,估计不少手机用户都好奇过吧!今天,就让我来给...
王者荣耀安卓系统改变,畅享指尖... 你知道吗?最近王者荣耀在安卓系统上可是来了一场大变身呢!这可不仅仅是界面上的小改动,而是从内到外都焕...