jmeter进行性能测试实践

设置场景接口

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

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

流程: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

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Linux之实战命令20:split应用实例(五十四)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【…

猫咪增肥大作战!福派斯牛肉高脂乳鸽猫粮测评

产品背景 福派斯宠物食品有限公司近期推出了其爆款产品——福派斯牛肉高脂乳鸽全价通用猫粮。这款猫粮以其高肉低敏配方、精选食材以及全面的营养补充,赢得了众多宠物主人和专业猫舍的青睐。经过全面配方和包装升级后,它不仅在口感和营养上有所提升&…

taobao.item_get_appAPI接口原app数据测试指南

在电商竞争日益激烈的当下,数据成为了商家们争夺市场的重要武器。淘宝,作为中国最大的在线零售平台,其庞大的商品库和用户群体为商家提供了巨大的商机。为了帮助商家更好地了解市场动态,优化库存和营销策略,淘宝推出了…

基于SpringBoot实现QQ邮箱发送短信功能 | 免费短信服务

开发学习过程中有个短信发送功能,阿里云腾讯云等等都要money,听说qq邮箱可以实现免费发送邮箱的功能(短信发送的平替),就用这个来实现!!!【找了好多好多方法才成功的啊啊啊啊&#x…

时序预测:多头注意力+宽度学习

本文所涉及所有资源均在 传知代码 平台可获取。 目录 概述 文章的主要贡献点 Multi-Attn整体架构 混沌时序数据预处理:基于相空间重构理论的混沌系统恢复 基于BLS随机映射的非线性动态特征重新激活 利用多头注意力机制进行多层语义信息提取 核心代码复现 代码优…

Golang | Leetcode Golang题解之第447题回旋镖的数量

题目: 题解: func numberOfBoomerangs(points [][]int) (ans int) {for _, p : range points {cnt : map[int]int{}for _, q : range points {dis : (p[0]-q[0])*(p[0]-q[0]) (p[1]-q[1])*(p[1]-q[1])cnt[dis]}for _, m : range cnt {ans m * (m - 1)…

Vue3 + Vite 开发环境下解决跨域问题:配置代理服务器

一、介绍 在 Vue3 结合 Vite 的前端开发中,跨域问题是常见的挑战之一。特别是在开发阶段,当后端 API 尚未配置好 CORS 支持时,使用代理服务器来绕过浏览器的同源策略(Same-origin policy)就显得尤为重要。本文将介绍如…

Word办公自动化的一些方法

1.Word部分内容介绍 word本身是带有格式的一种文档,有人说它本质是XML,所以一定要充分利用标记了【样式】的特性来迅速调整【格式】,从而专心编辑文档内容本身。 样式(集) 编号(多级关联样式编号&#xff…

Ubuntu下安装Zookeeper集群

Zookeeper集群是一个开源的分布式协调服务系统,它由Apache软件基金会维护,旨在为分布式应用提供一致性和可靠性的服务。 在Zookeeper集群中,服务器可以扮演三种角色——领导者(Leader)、跟随者(Follower&a…

去掉顶部下拉框中的护眼模式

文章目录 需求参考知识点功能实现问题点问题点修改文件具体修改点总结 需求 顶部下拉框中的护眼模式去掉 参考知识点 我们在博客中已经分析了QS、QQS 相关的流程,实践过项目需求 Android12 SystemUI QS面板新增截屏功能 Android12_SystemUI下拉框新增音量控制条…

微信网页 上传图片压缩

微信网页上传图片时的压缩问题可以通过多种方法解决。以下是一些有效的方案和相关API的使用说明。 主要解决方案 1. 使用Canvas进行自定义压缩: 对于需要适配多种设备和格式的情况,可以利用Canvas API进行图片重绘和压缩。通过获取图片信息、设置Canvas尺寸、绘制图片并…

2024年9月30日历史上的今天大事件早读

1626年9月30日 清太祖努尔哈赤去世 1862年9月30日 德国首任宰相俾斯麦实行“铁血政策” 1887年9月30日 黄河决口 1931年9月30日 国际联盟决议日本撤兵 1937年9月30日 平型关战役结束 1938年9月30日 慕尼黑协议签订 1938年9月30日 前中华民国国务总理唐绍仪遇刺身亡 1941…

box-im

任何一个开源项目,都可以让自己得到提升! 启动minio: minio.exe server C:\Program Files\Minio\minioData

相亲交友系统源码中的数据安全策略

在数字化时代,人们越来越依赖于互联网来寻找生活的另一半。相亲交友系统作为连接单身男女的重要平台,承载着无数用户的个人信息与隐私。因此,数据安全成为了此类系统不可忽视的关键因素。本文将探讨相亲交友系统源码中的数据安全策略&#xf…

事实与价值双阈值是算计启动的门槛

在现代社会,个体与群体的决策过程受到多种因素的影响,其中事实与价值的关系尤为重要。事实作为客观存在的基础,价值则是主观认知的体现。两者的相互作用构成了人类行为的复杂性,尤其在经济学、社会学以及伦理学等领域,…

3GPP链路级仿真-Link-Level Simulator for 5G Localization

文章目录 II. SYSTEM ARCHITECTURE AND CAPABILITIESA. System Architecture III. KEY COMPONENTSA. Transmission Models of the Positioning SignalsB. Dedicated Wireless Channel Model IV. APPLICATION CASESA. Two-Dimensional Mobile Terminal Localization仿真工作流程…

合成孔径雷达海上石油泄露分割数据集,共8000对图像,sentinel和palsar传感器,共400MB

合成孔径雷达海上石油泄露分割数据集,共8000对图像,sentinel和palsar传感器,共400MB 名称 合成孔径雷达(SAR)海上石油泄露分割数据集 规模 图像对数:8000对图像传感器类型: Sentinel-1 SAR 传…

PTVS:Python开发者的Visual Studio扩展

PTVS(Python Tools for Visual Studio) 是由微软开发的一款用于 Visual Studio 的 Python 开发环境。它为 Python 开发者提供了丰富的功能,包括智能感知、调试工具、项目管理、测试支持等,使得在 Windows 平台上进行 Python 开发变…

光耦——为智能电网建设提供安全高效解决方案

在智能电网的宏伟蓝图中,光耦以其独特的光电转换特性,成为了不可或缺的技术核心。作为一种先进的光电转换器件,光耦在智能电网建设中发挥着举足轻重的作用。 电能计量与监测 光耦可用于智能电表等电能计量设备中,实现电能数据的采…

数据库管理-第245期 主流国产数据库RAC架构概览(20240929)

数据库管理245期 2024-09-29 数据库管理-第245期 主流国产数据库RAC架构概览(20240929)1 DMDSC2 KingBaseES RAC3 PolarDB4 Cantian5 HaloDB DLB/Data Sharding总结 数据库管理-第245期 主流国产数据库RAC架构概览(20240929) 作者…