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

在这里插入图片描述

相关内容

热门资讯

自动打开应用安卓系统,安卓系统... 你有没有想过,手机里的那些应用,有时候真是让人又爱又恨呢?有时候,我们急需某个应用,却得费老大力气去...
安卓系统防沉迷软件,守护青少年... 你有没有发现,现在手机上玩游戏的诱惑力简直让人无法抗拒?尤其是安卓系统,那丰富的游戏资源,简直让人停...
流量最快的安卓系统,揭秘流量最... 你有没有想过,为什么你的手机总是那么卡,而别人的手机却像开了挂一样流畅?是不是好奇,为什么有些安卓系...
小米5换换安卓系统,畅享极致性... 你有没有想过,你的小米5手机,那个陪伴你走过无数日夜的小家伙,是不是也该给它来个“换新装”了呢?没错...
国产的安卓系统手机,畅享智能生... 你有没有发现,最近国产的安卓系统手机越来越火了?没错,就是那种咱们自己研发的系统,那种让外国品牌都不...
安卓系统刷入停止,探究原因与解... 你有没有遇到过这种情况?手机刷机过程中突然停止了,安卓系统刷入停滞不前,心里那个急啊!别慌,今天就来...
汽车是安卓系统嘛,安卓系统在智... 你有没有想过,汽车里那个神奇的操作系统,是不是和安卓手机里的一样呢?没错,今天咱们就来聊聊这个话题—...
网易狼人杀 安卓系统,体验指尖... 亲爱的玩家们,你是否曾在深夜里,手机屏幕前,与一群好友展开一场惊心动魄的“狼人杀”对决?今天,就让我...
小米安卓系统小主机,探索小米安... 你有没有想过,家里的电视、电脑、平板,甚至手机,其实都可以变成一个超级智能的娱乐中心?没错,这就是小...
卡刷安卓系统大全,全面解析各类... 你有没有想过,你的安卓手机可以像变形金刚一样,随心所欲地变换模样?没错,今天就要给你揭秘一个神奇的世...
安卓系统测试流畅度,安卓系统流... 你有没有发现,现在手机更新换代的速度简直就像坐上了火箭呢!尤其是安卓系统,每次更新都让人眼前一亮。但...
安卓系统50怎么升级,轻松迈向... 亲爱的安卓用户们,你是否也像我一样,对安卓系统的更新充满了期待?没错,就是那个让我们的手机焕然一新的...
安卓5.1.1操作系统,系统特... 你知道吗?在手机世界里,操作系统就像是个大管家,它不仅决定了手机的脸面,还掌管着手机的所有“家务事”...
手机安卓系统如果升级,体验流畅... 亲爱的手机控们,你们有没有发现,你的安卓手机最近是不是总在提醒你更新系统呢?别急,别急,今天就来给你...
安卓系统怎么禁止待机,安卓系统... 手机待机时间短,是不是让你头疼不已?别急,今天就来教你一招,让你的安卓手机告别“短命”模式,延长待机...
亿联安卓苹果系统,跨平台沟通新... 你知道吗?在科技飞速发展的今天,手机操作系统可是咱们日常生活中不可或缺的一部分。说起手机系统,亿联安...
smoothx安卓系统安装ap... 你有没有想过,为什么你的手机里总是乱糟糟的,各种app堆在一起,找起来费劲得很?别急,今天就来教你怎...
安卓系统图库在哪里,图库应用位... 你有没有发现,手机里的照片越来越多,有时候想找一张特定的照片,却像大海捞针一样困难?别急,今天就来告...
安卓7.0系统自带彩蛋,隐藏彩... 你知道吗?安卓7.0系统里竟然藏着不少小秘密,就像一颗颗隐藏的彩蛋,等着我们去发现。今天,就让我带你...
安卓系统好用的电池,好用到飞起... 你有没有发现,用安卓手机的时候,电池续航能力简直让人爱不释手啊!没错,今天咱们就来聊聊这个话题——安...