jmeter进行性能测试实践

embedded/2025/1/1 14:13:19/

设置场景接口

一、通过抓取一个场景的接口(抓包)

自己抓取需要的接口,进行依赖

流程:1.在网页上F12抓取登录页面和登出页面的URL。2.在jemeter设置线程组,添加http请求输入URL等。3.查看结果数

二、通过boday录制

1、下载badboy 包,下载。进行安装badboyinstaller-2.2.5.exe

2、安装的工程:点击同意

3、修改存储位置,点击install

4、close关闭页面

5、找到下载位置找到应用程序,设置桌面快捷方式

6、显示图标

6、双击图标打开

输入网址:

http://cms.duoceshi.cn/manage/login.do

点击箭头运行

7、录制后脚本导出成后缀jmx的文件,再在左上角文件右击export to JMeter导入到jmetere中

8、将录制号的脚本导入到jmerte中。在jemeter-打开文件

第三种方法:反向代理录制脚本

jmeter中进行录制

1、新建一个线程(用来接收接口)存放录制的接口

2、工作台中添加代理服务器

工作台-右击-添加非测试元件-http代理服务器

填写端口号,比如8888-检查端口号是否占用-目标控制器选择录制存放的地址 ---启动

查询查看端口是否占用:

 命令:netstat  -aon|findstr "8888"  空白说明没有占用

排除模式:

.*\.(js|css|PNG|jpg|ico|png|gif|html).*  排除模式,排除不需要的文件类型

再到谷歌浏览器中设置

谷歌的设置中:==高级==代理==使用代理服务器==写三个:127.0.0.1,ipconfig查看locahost、IP地址

录制好的数据就没有多余的HTML等类型的

对数据参数化

一、jmeter 进行(一个接口,多个用户压测)

1、在项目中新建用户(100个或1000个)

(1)新增用户:点击新增,新增接口(线程数10000),数据库中用户表存储过程造数(10000)

(2)jmeter新增登录接口,账号,密码设置成变量

新建线程组,加入http请求没输入web服务器协议和IP以及http请求方式和路径,添加名称和值

(3)前置处理器的用户参数

(4)设置线程组数,查看结果

二、并发测试(同一时间,同一个点发送接口)

1、准备两个接口:登录接口,一个用户查询接口

登录 接口

查询接口(在网页F12抓数据)

运行结果不是统一的

并发测试

右击添加定时器,选择Synchronizing Timer  集合点

集合点的概念:loadrunner中集合点可以设置多个虚拟用户等待到一个点,同时触发一个事务,以达到模拟真实环境下多个用户同时操作实现性能测试的最终目的。jmeter
中使用Synchronizing Timer实现Lr中集合点的功能,模拟多用户并发测试,即多个线程在同一时刻并发请求。

1、线程组右键 -> 定时器 -> Synchronizing Timer
2、参数设置
a. Number of Simulated Users to Group by: 此处填写并发数量
b. Timeout in milliseconds: 超时时间设置
Jmeter默认没有超时时间,如果没有设置,一旦没有达到集结数量的请求系统就一直
等待。
计算超时时间方法参考: 并发数量 * 1000毫秒/( 线程数/在多少时间启动这么多线程)
10*1000/(10/10)=10000

定时器作用域:
作用于该定时器之后的所有请求,也就是说定时器实在请求执行前起作用的并发数和线程数一致时,并发启动时间,一定要大于线程组启动,如果小于这个时间,并发数量不准确。
(注意:线程组整理的启动时间单位是秒,定时器里的等待时间是:毫秒 ,哟啊注意单位换算,1秒=1000毫秒)

上边填并发数,下面设置超时时间

最大并发数:

最佳并发数:

三、稳定性测试

(1)设置开始时间--结束时间,选择循环次数:一直运行

(2)设置持续时间

四、基准测试

最大压测1000个用户,现在用10个用户压测,基准测试

一、性能插件的安装

1、下载jar包

2、将jar存放路径:

路径:

3、启动插件

显示:

4、重启jmeter,显示以下的插件,表示安装插件成功

二、性能插件的认识:


@gc - Active Threads Over Timeip 活动线程时间

@gc - AutoStop Listener 自动停止侦听器

@gc - Bytes Throughput Over Timejp 字节吞吐量随时间变化

@gc -Composite Graph 综合图

@gc - Connect Times Over Timejp 连接时间

@gc -Console Status Loggerjp 控制台状态记录器

@gc - DbMon Samples Collectorjp (DbMon Collectorjp样品收集器

@gc -Flexible File Writer 监听器之灵活的文件写入

@gc - Graphs Generatorjip 图形发生器

@gc - Hits per Second 每秒点击次数

@gc -JMXMon Samples Collectorjp (JMXMon样品收集器

@gc - Page Data Extractor 页面数据提取器

@gc - PerfMon Metrics Collectorjip 性能指标收集器

@gc - Response Codes per Secondjip 每秒响应数

@gc - Response Latencies Over Timejip 随时间间隔变化的响应延迟

@gc - Response Times Distributionjip 响应时间分布图

@gc - Response Times Over Time 随时间变化的响应时间

@gc - Response Times Percentilesjip 响应时间百分位数

@gc - Response Times vs Threadsjp 响应时间vs线程

@gc - Synthesis Report (filtered) 综合报告(过滤)

@gc - Transaction Throughput vs Threadsjip 整个线程的事务

@gc - Transactions per Second 每秒事务数

三、实战插件指标

1、设置压力测试1000:

2、添加所有插件:

注意点:不要添加jp@gc - PerfMon Metrics Collector,会报错

其他全部添加,收集信息

四、解释每一个性能插件的信息:了解各个插件的功能

https://www.cnblogs.com/xiaolehong/p/18142818 性能插件

图片

五、熟悉性能指标

https://www.cnblogs.com/xiaolehong/p/18142797 性能指标

https://www.cnblogs.com/xiaolehong/p/16786225.html tps

文章来源:https://blog.csdn.net/AgostoDu/article/details/142627465
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/embedded/120255.html

相关文章

动静态库(Linux)

文章目录 前言一、静态库二、动态库三、深入理解动态库总结 前言 我们之前用过c语言的库.Linux中默认的都是使用动态库,如果想要使用静态库,就必须加上-static选项。默认都是安装的动态库,系统中一般没有静态库,如果要使用&#…

Vue2配置环境变量的注意事项

在实际开发中时常会遇到需要开发环境与生产环境中一些参数的替换,为了方便线上线下环境变量切换可以利用node中的process进行环境变量管理 实现步骤如下: 1.在 根目录 新增环境文件 .env.development 和 .env.production 注意文件名称保持一致( 需要强调的是文件中的变量名切…

​​合​​合​​信​息​​​龙​​湖​​数​​科​​一​​面​​​

1. 请尽可能详细地说明,Git中merge和rebase的区别和应用场景?Git中pull和fetch的区别和应用场景?Git中revert和reset的区别和应用场景?你的回答中不要写出示例代码。 Git中merge和rebase的区别和应用场景 merge 区别&#xff1…

IvorySQL 3.4:如何实现兼容Oracle风格的序列功能?

1 什么是序列? 一个序列是一个数据库对象,与表和视图类似,它表示可以由全局数据库命名空间中的任何表和视图使用的整数序列。可以使用NEXTVAL和CURRVAL访问序列值。序列可以是升序或降序。 2 Oracle的序列相比PG多了什么? 支持…

【Linux 从基础到进阶】HBase数据库安装与配置

HBase数据库安装与配置 Apache HBase 是一个开源的、分布式的、面向列的数据库,基于 Hadoop 的 HDFS 构建,适用于需要随机读写大量数据的场景。HBase 提供了强大的容错和线性扩展能力,支持高并发的读写操作,广泛应用于大数据分析和实时应用系统中。 本文将介绍 HBase 的安…

视频集成与融合项目中需要视频编码,但是分辨率不兼容怎么办?

在众多视频整合项目中,一个显著的趋势是融合多元化的视频资源,以实现统一监管与灵活调度。这一需求促使项目团队不断探索新的集成方案,确保不同来源的视频流能够无缝对接,共同服务于统一的调看与管理平台,进而提升整体…

【进阶OpenCV】 (2)--Harris角点检测

文章目录 harris角点检测一、基本思想二、算法实现1. 函数方法2. 检测角点3. 标记角点 总结 harris角点检测 Harris角点检测算法是一种常用的计算机视觉算法,用于检测图像中的角点。该算法通过计算图像中每个像素的局部自相关矩阵,来判断该像素是否为角…

Linux常用命令(工作)

查磁盘有时候使用df - h查不到完整的磁盘这个时候建议使用lsblk lsblk (查看磁盘信息 - 列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息) df -h free -h 内存 查CPU建议使用lscpu op&…