Jmeter分布式压测入门笔记

2、常用压力测试工具对比
简介:目前用的常用测试工具对比
1、loadrunner
A:性能稳定,压测结果及细粒度大,可以自定义脚本进行压测
B:但是太过于重大,功能比较繁多
2、apache ab(单接口压测最方便)
A:模拟多线程并发请求,ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存
B:但却会给目标服务器造成巨大的负载, 简单DDOS攻击等
3、webbench
A:webbench首先fork出多个子进程,每个子进程都循环做web访问测试。子进程把访问的结果通过pipe告诉父进程,父进程做最终的统计结果。
章节二 JMeter4.x基础知识讲解和压测实操
3、Jmeter基本介绍和使用场景
简介
1、压测不同的协议和应用
1) Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)
2) SOAP / REST Webservices
3) FTP
4) Database via JDBC (数据库)
5) LDAP 轻量目录访问协议
6) Message-oriented middleware (MOM) via JMS
7) Mail - SMTP(S), POP3(S) and IMAP(S)
8) TCP等等
2、使用场景及优点
1)功能测试
2)压力测试
3)分布式压力测试
4)纯java开发
5)上手容易,高性能
4)提供测试数据分析
5)各种报表数据图形展示
3、本地快速安装Jmeter4.x
简介:GUI图形界面的安装
1、需要安装JDK8。或者JDK9,JDK10
2、快速下载
windows: http://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-4.0.zip
mac或者linux: http://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-4.0.tgz
3、文档地址:http://jmeter.apache.org/usermanual/get-started.html
4、建议安装JDK环境,虽然JRE也可以,但是压测https需要JDK里面的 keytool工具
5、Jmeter目录文件讲解
简介:讲解jmeter解压文件里面的各个目录,文件等
1、目录
bin:核心可执行文件,包含配置
jmeter.bat: windows启动文件:
jmeter: mac或者linux启动文件:
jmeter-server:mac或者Liunx分布式压测使用的启动文件
jmeter-server.bat:mac或者Liunx分布式压测使用的启动文件
jmeter.properties: 核心配置文件
extras:插件拓展的包
lib:核心的依赖包
ext:核心包
junit:单元测试包
6、Jmeter语言版本中英文切换
简介: 讲解怎么改变jmeter的GUI界面语言版本
1、控制台修改
menu -> options -> choose language
2、配置文件修改
bin目录 -> jmeter.properties
默认 #language=en
改为 language=zh_CN
7、使用SpringBoot 2.0快速编写API测试接口
简介:使用java的框架springBoot快速编写几个API接口测试
https://spring.io/guides/gs/spring-boot/
接口列表
1、模拟GET请求,用户列表接口
2、模拟POST请求,用户登录接口
http://localhost:8080/users
8、创建Jmeter测试计划,快速压测一个接口
简介:通过带着why来学习,快速创建一个测试计划
章节三 Jmeter核心组件讲解和实操
9、Jmeter基础功能组件介绍线程组和Sampler
简介:讲解Jmeter里面GUI菜单栏主要组件
1、添加->threads->线程组(控制总体并发)
线程数:虚拟用户数。一个虚拟用户占用一个进程或线程准备时长(Ramp-Up Period(in seconds)):全部线程启动的时长,比如100个线程,20秒,则表示20秒内100个线程都要启动完成,每秒启动5个线程
循环次数:每个线程发送的次数,假如值为5,100个线程,则会发送500次请求,可以勾选永远循环
2、线程组->添加-> Sampler(采样器) -> Http (一个线程组下面可以增加几个Sampler)
名称:采样器名称
注释:对这个采样器的描述
web服务器:
默认协议是http
默认端口是80
服务器名称或IP :请求的目标服务器名称或IP地址
路径:服务器URL
Use multipart/from-data for HTTP POST :当发送POST请求时,使用Use multipart/from-data方法发送,默认不选中。
3、查看测试结果
线程组->添加->监听器->察看结果树
10、Jmeter的断言基本使用
简介:介绍什么是断言及基本使用
1、增加断言: 线程组 -> 添加 -> 断言 -> 响应断言
apply to(应用范围):
Main sample only: 仅当前父取样器 进行断言,一般一个请求,如果发一个请求会触发多个,则就有sub sample(比较少用)
要测试的响应字段:
响应文本:即响应的数据,比如json等文本
响应代码:http的响应状态码,比如200,302,404这些
响应信息:http响应代码对应的响应信息,例如:OK, Found
Response Header: 响应头
模式匹配规则:
包括:包含在里面就成功
匹配:响应内容完全匹配,不区分大小写
equals:完全匹配,区分大小写
2、断言结果监听器: 线程组-> 添加 -> 监听器 -> 断言结果
里面的内容是sampler采样器的名称
断言失败,查看结果树任务结果颜色标红(通过结果数里面双击不通过的记录,可以看到错误信息)
3、每个sample下面可以加单独的结果树,然后同时加多个断言,最外层可以加个结果树进行汇总
11、Jmeter实战之压测结果聚合报告分析
简介:讲解压测结果的聚合报告
新增聚合报告:线程组->添加->监听器->聚合报告(Aggregate Report)
lable: sampler的名称
Samples: 一共发出去多少请求,例如10个用户,循环10次,则是 100
Average: 平均响应时间
Median: 中位数,也就是 50% 用户的响应时间
90% Line : 90% 用户的响应不会超过该时间 (90% of the samples took no more than this time. The remaining samples at least as long as this)
95% Line : 95% 用户的响应不会超过该时间
99% Line : 99% 用户的响应不会超过该时间
min : 最小响应时间
max : 最大响应时间
Error%:错误的请求的数量/请求的总数
Throughput: 吞吐量——默认情况下表示每秒完成的请求数(Request per Second) 可类比为qps
KB/Sec: 每秒接收数据量
12、Jmeter压测脚本JMX讲解
简介:压测脚本JMX讲解
1、打开方式subline,或者xml编辑器
2、运行日志和压测时间查看(基础按钮)
章节四 自定义变量和CSV可变参数实操
13、Jmeter用户自定义变量实战
简介:什么是用户自定义变量,怎样使用
为什么使用:很多变量在全局中都有使用,或者测试数据更改,可以在一处定义,四处使用
比如服务器地址
1、线程组->add -> Config Element(配置原件)-> User Definde Variable(用户定义的变量)
2、引用方式${XXX},在接口中变量中使用
3、原始查看结果树和非原生查看(基础按钮)
14、Jmeter实战之CSV可变参数压测
简介:实战操作jmeter读取CSV和Txt文本文件里面的参数进行压测
1、线程组->add -> Config Element(配置原件)-> CSV data set config (CSV数据文件设置)
15、CSV文件多参数使用
简介:在读取的配置文件里面,同时使用多个自定义参数
1、如果是多个参数需要同时引用,则在CSV数据文件里面设置加多个字段
Variabled names(comma-delitited): csv_name,csv_pwd
章节五 Mysql数据库压测实操

JMeter分布式压测是使用多台计算机同时执行JMeter测试计划,以模拟大量并发用户的压力。使用分布式压测可以有效提高负载能力,并避免单台机器的性能限制。在分布式压测中,一个JMeter主控节点负责管理所有的测试计划和生成结果报告,而多个JMeter工作节点则同时执行测试计划,并将结果返回给主控节点进行统计和分析。 要进行JMeter分布式压测,需要进行以下步骤: 1. 配置JMeter主控节点:在主控节点上,设置一个JMeter测试计划,并将其配置为分布式测试模式。在测试计划中,设置各个线程组、取样器和监听器等测试元素,以模拟真实的用户行为。 2. 配置JMeter工作节点:在每个工作节点上,安装并配置JMeter,并确保与主控节点在同一局域网中。工作节点需要拥有相同的测试计划文件和测试数据。 3. 启动主控节点:在主控节点上启动JMeter,并开始压测。主控节点会将测试计划和相关配置发送给各个工作节点,并收集并分析结果。 4. 启动工作节点:在每个工作节点上启动JMeter,并连接到主控节点。工作节点会接收主控节点发送的测试计划和相关配置,并执行测试计划。 5. 监控和分析结果:在压测过程中,可以通过主控节点的监听器查看实时结果,并在压测结束后生成详细的报告进行分析。 以上是JMeter分布式压测的基本流程。通过合理配置和管理分布式压测环境,可以更好地模拟真实的用户场景,评估系统的性能和稳定性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值