软件测试--性能测试工具JMeter
软件测试--性能测试工具JMeter
- 主流性能测试工具
- 1.主流性能测试工具Loadrunner和Jmeter对比 —— 相同点
- 2.主流性能测试工具Loadrunner和Jmeter对比 —— 不同点
- JMeter基本使用
- JMeter环境搭建
- 1.安装JDK:
- 2.安装Jmeter:
- 3.注意点:
- JMeter功能概要
- 1. JMeter文件目录介绍
- 1.1 bin目录
- 1.2 docs目录
- 1.4 lib目录
- 2. 修改默认配置
- 2.1 汉化配置
- 2.2 修改主题
- JMeter元件作用域和执行顺序
- 1. 元件的基本介绍
- 2. 元件作用域
- 3. 元件执行顺序
- JMeter使用示例
- 1. JMeter第一个案例
- 2. 重点组件
- 2.1 线程组
- 2.2 HTTP请求:
- 2.3 查看结果树
- Jmeter参数化(重点)
- 1. JMeter参数化常用方式
- 2. 用户定义的变量
- 2.1 场景
- 2.2 操作步骤
- 3. 用户参数
- 3.1 场景
- 3.2 操作步骤
- 4. CSV 数据文件设置
- 4.1 场景
- 4.2 操作步骤
- 5.函数(__counter)
- 5.1 函数助手
- 5.2 场景
- 5.3 操作步骤
- JMeter断言
- 1. JMeter断言
- 1.1 断言的概念
- 1.2 JMeter中常用断言
- 2. 响应断言
- 2.1 案例
- 2.2 参数详解
- 3. JSON断言
- 3.1 案例
- 3.2 参数详解
- 4. 断言持续时间
- 4.1 案例
- 4.2 参数详解
- JMeter关联
- 1. 关联
- 2. 正则表达式提取器
- 2.1 场景
- 2.2 操作步骤
- 2.3 参数介绍
- 3. XPath提取器
- 3.1 场景
- 3.2 操作步骤
- 3.3 参数介绍(XPath提取器)
- 4. JSON提取器
- 4.1 场景
- 4.2 操作步骤
- 4.3 参数介绍
- 5. 跨线程组关联
- 5.1 Jmeter属性的配置方法
- 5.2 场景
- 5.3 操作步骤
- JMeter录制脚本
- JMeter进行性能测试的技术要点
- JMeter定时器
- 1.同步定时器(Synchronizing Timer)
- 1.1 介绍
- 1.2 案例
- 1.3 注意事项
- 2. 常数吞吐定时器(Constant Throughput Timer)
- 2.1 介绍
- 2.2 案例
- JMeter分布式
- 1. JMeter分布式测试
- 1.1 JMeter分布式执行原理
- 1.2 代理机(Agent)配置
- 1.3 控制机(Controller)配置
- 1.4 案例
- 1.5 备注
- JMeter测试报告
- 1. 聚合报告
- 2. 生成html测试报告
- 2.1 命令
- 2.2 查看测试报告
- JMeter性能测试常用图表
- 1. 常用平均并发数计算公式
- 1.1 普通计算方法
- 1.2 二八原则计算方法
- 1.3 按照业务数据进行计算
- 2. 插件管理包工具
- 3.性能测试常用图表及组件
- 3.1 Concurrency Thread Group 线程组
- 3.2 Transactions per Second
- 3.3 Bytes Throughput Over Time
- 3.4 PerfMon Metrics Collecto
主流性能测试工具
1.主流性能测试工具Loadrunner和Jmeter对比 —— 相同点
- 都能模拟大量用户
- 都能支持多协议(常见的协议都支持,如:HTTP)
- 都有监控及分析报表功能
2.主流性能测试工具Loadrunner和Jmeter对比 —— 不同点

结论:项目日常性能测试Jmeter足够用,出商业报告优先Loadrunner
JMeter基本使用
JMeter环境搭建
1.安装JDK:
• 下载JDK – 安装JDK – 配置环境变量 – 验证
.
2.安装Jmeter:
• 下载Jmeter – 安装Jmeter – 配置环境变量 – 启动验证
3.注意点:
• 下载JDK时,注意电脑操作系统是32位/64位
• 下载Jmeter时,注意与本机安装的JDK版本匹配
• 安装Jmeter时,安装路径中不能有中文/空格
JMeter功能概要
1. JMeter文件目录介绍
1.1 bin目录
存放可执行文件和配置文件

1.2 docs目录
docs:是JMeter的api文档,用于开发扩展组件,可打开api/index.html页面来查看

1.3 printable_docs目录
- printable_docs的usermanual子目录下的内容是JMeter的用户手册文档
- usermanual下component_reference.html
相关文章:
软件测试--性能测试工具JMeter
软件测试--性能测试工具JMeter 主流性能测试工具1.主流性能测试工具Loadrunner和Jmeter对比 —— 相同点2.主流性能测试工具Loadrunner和Jmeter对比 —— 不同点JMeter基本使用JMeter环境搭建1.安装JDK:2.安装Jmeter:3.注意点:JMeter功能概要1. JMeter文件目录介绍1.1 bin目…...
c++/c图的邻近矩阵表示
#include<iostream> using namespace std;#define MaxVerterNum 100 typedef char VerterType; typedef int EdgeType; typedef struct {VerterType vexs[MaxVerterNum]; // 存储顶点EdgeType edges[MaxVerterNum][MaxVerterNum]; // 存储邻接矩阵int n, e; // 顶点数和边…...
cocos-lua定时器用法
本文介绍cocos-lua(非Quick-cocos)的定时器用法 定时器按是否会随节点销毁,可分为节点调度器和全局调度器 一.节点调度器 frameworks\cocos2d-x\cocos\scripting\lua-bindings\script\cocos2d\deprecated.lua中实现了了schedule和 performWithDelay 1.1.schedul…...
激活函数Swish(ICLR 2018)
paper:Searching for Activation Functions 背景 深度网络中激活函数的选择对训练和任务表现有显著的影响。目前,最成功和最广泛使用的激活函数是校正线性单元(ReLU)。虽然各种手工设计的ReLU替代方案被提出,但由于在…...
【C++ 标准流,文件流】
C 标准流,文件流 ■ 标准输入,输出流,■ 文件流(ofstream写入,ifstream读取,fstream创建-写入-读取)■ open()■ ofstream■ ifstream■ 流插入<<■ 文件位置指针 ■ 标准输入,…...
【排序】详解冒泡排序
一、思想 冒泡排序的基本思想是利用两两比较相邻记录的方式,通过一系列的比较和交换操作,使得较大或较小的元素逐渐移动到数列的一端。在每一轮的排序过程中,都会从数列的起始位置开始,对相邻的元素进行比较,如果它们…...
什么是Docker容器?
Docker是一种轻量级的虚拟化技术,同时是一个开源的应用容器运行环境搭建平台,可以让开发者以便捷方式打包应用到一个可移植的容器中,然后安装至任何运行Linux或Windows等系统的服务器上。相较于传统虚拟机,Docker容器提供轻量化的…...
(C++练习)选择题+编程题
个人主页:Lei宝啊 愿所有美好如期而遇 选择题 以下程序输出结果是什么() class A{public:virtual void func(int val 1){ std::cout<<"A->"<< val <<std::endl;}virtual void test(){ func();}};class B…...
【鸿蒙开发】第十五章 ArkTS基础类库-并发
1 简述 并发是指在同一时间段内,能够处理多个任务的能力。为了提升应用的响应速度与帧率,以及防止耗时任务对主线程的干扰,OpenHarmony系统提供了异步并发和多线程并发两种处理策略,ArkTS支持异步并发和多线程并发。并发能力在多…...
华为数通方向HCIP-DataCom H12-821题库(多选题:21-40)
第21题 管理员在配置 VRRP 时,下面哪些不是必须配置的? A.抢占模式 B.抢占延时 C.虚拟IP 地址 D.虚拟路由器的优先级 【参考答案】ABD 【答案解析】 VRRP的作用之一是提供一个虚拟的IP地址,用作默认网关,用来实现冗余和故障转移。因此,配置虚拟IP地址是必须的。华为设备vr…...
【简单模拟】第十三届蓝桥杯省赛C++ B组《刷题统计》(c++)
1.题目描述 小明决定从下周一开始努力刷题准备蓝桥杯竞赛。 他计划周一至周五每天做 a 道题目,周六和周日每天做 b 道题目。 请你帮小明计算,按照计划他将在第几天实现做题数大于等于 n 题? 2.输入格式 输入一行包含三个整数 a,b 和 n。…...
IO-DAY3
使用read和write实现文件夹拷贝功能 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<unistd.h> #include<sys/types.h> #include<sys/stat.h> #include<fcntl.h> #include<dirent.h> int main(int argc,…...
python实现常见一元随机变量的概率分布
一. 随机变量 随机变量是一个从样本空间 Ω \Omega Ω到实数空间 R R R的函数,比如随机变量 X X X可以表示投骰子的点数。随机变量一般可以分为两类: 离散型随机变量:随机变量的取值为有限个。连续型随机变量:随机变量的取值是连…...
微服务学习
SpringCloud组成 服务注册与发现:consul 阿里Nacos 服务调用和负载均衡:OpenFeign LoadBalance 分布式事务:阿里Seata 服务熔断和降级:阿里Sentinel Circuit Breaker 服务链路追踪:Micrometer Tracing 服务网关:GateWa…...
【.NET Core】深入理解IO - 读取器和编写器
【.NET Core】深入理解IO - 读取器和编写器 文章目录 【.NET Core】深入理解IO - 读取器和编写器一、概述二、BinaryReader和BinaryWriter2.1 BinartReader类2.2 BinaryWriter类 三、StreamReader和StreamWriter3.1 StreamReader类3.1 StreamWriter类StreamWriter类构造函数Str…...
【Java项目介绍和界面搭建】拼图小游戏——添加图片
🍬 博主介绍👨🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏 …...
「MySQL」基本操作类型
🎇个人主页:Ice_Sugar_7 🎇所属专栏:数据库 🎇欢迎点赞收藏加关注哦! 数据库的操作 创建、显示数据库 使用 create 创建一个数据库 create database goods;然后可以用 show databases 来查看已经创建的数…...
Android 14 权限
问题Android 14 按照视频播放类的应用 无法获取到权限。 原因是从 Android 13 开始,如果你的应用程序 targetSdk 指定到了 33 或以上,那么 READ_EXTRERNAL_STORGE 权限就完全失去了作用,申请它将不会产生任何效果。 与此相对应的,…...
Springboot整合SSE实现实时消息推送
SSE详细介绍传送门:SSE实时消息推送 简单描述一下SSE推送在实际项目中应用的常见场景 1,项目页面中有消息通知板块,当信息有变化时,只有手动刷新页面,才会看到最新的数据,这里可以采用SSE技术实时推送最新…...
在pytorch中利用GPU训练神经网络时代码的执行顺序并提高训练效率
在pytorch中利用GPU训练神经网络时代码的执行顺序并提高训练效率 在 PyTorch 中,大多数操作在 GPU 上默认是异步执行的,但这并不意味着它们是并行执行的。要理解代码是同步还是异步执行,以及是串行还是并行执行,我们需要考虑几个…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...
【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
