【性能测试】jmeter安装 & 基本使用

安装

下载

下载地址:添加链接描述
在这里插入图片描述


解压

tar -zxvf apache-jmeter-xxx.tgz -C /other
附选项解:
-z:通过gzip指令处理备份文件
-x:从备份文件中还原文件
-v:显示指令执行过程
-f:指定备份文件
-C:切换到指定的目录

配置环境变量

vi /etc/profile
在文件底部添加如下配置(软件路径写自己的)

export JMETER_HOME=/usr/local/apache-jmeter-5.5
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH

使配置文件更新的内容立即生效

source /etc/profile


检测安装是否成功

jmeter -v
在这里插入图片描述


启动

在终端输入 jmeter



jmeter基本使用

测试计划

常用:
1.独立运行每个线程组
2.第三方包的引用
在这里插入图片描述___

线程组

** jp@gc - Stepping Thread Group**
使用场景:基准测试,负载测试,压力测试
在这里插入图片描述
1.this group will start 表示:共运行多少个线程
2.first,wait for 表示:等待多少分钟后运行线程
3.then start 表示:开始运行多少线程组
4.next,add 运行过程中 一次加载多少线程组
5.threads every xx second 表示:完成一次线程数加载后,运行多长时间
6.using ramp-up 表示:完成加载一次线程数所使用的时间
7. then hold load for 表示:所有线程组加载完后,运行多长时间
8. finally, stop 表示:最终结束多少线程组
9. threads every xxx sconds: 结束每个线程需要花费的时间


** jp@gc - Ultimate Thread Group**
使用场景:浪涌测试
在这里插入图片描述
1.start threads count : 需要加载的线程数
2.initail delay, sec :加载线程前等待的时间
3.startup time, sec : 启动所有线程需要的时间
4. Hold load for, sec : 运行线程需要的时间
5. shutdown time: 结束线程组需要的时间

附:插件安装
网址:https://jmeter-plugins.org/install/Install/


控制器

1.仅一次控制器: 所有线程仅发一次请求,例: 线程组设置5个线程数,那么控制器下的接口只请求5次
2.事务控制器:把控制器内的所有请求生成一个事务在这里插入图片描述

3.吞吐量控制器
在这里插入图片描述
4.模块控制器
在这里插入图片描述

参数化

随机字符串函数
在这里插入图片描述
随机数函数
随机日期函数
文件参数化

思考时间

作用:为了更真实模拟用户操作

固定定时器
在这里插入图片描述

统一随机定时器
统一随机定时器的总延时 = 固定延迟时间 + 随机生成的延迟时间
在这里插入图片描述
高斯随机定时器
高斯随机定时器的总延时 = 固定延迟时间 + 上下偏移时间
在这里插入图片描述

集合点

同步定时器
作用:等待一定数量的线程,同步并发
在这里插入图片描述
要点:
1.设置线程数不要大于线程组总数
2.当集合线程数不足时,需要超时时间

JDBC

作用:
1.去后台数据进行参数化
2.构造测试数据
3.测试sql语句的性能

JDBC配置
方法一: 把jar包放入jmeter 的 lib目录下,重启jmeter
方法二:在测试计划下方引用jar包
在这里插入图片描述

JDBC链接配置
在这里插入图片描述

JDBC Request
1.查询
在这里插入图片描述

2.插入
在这里插入图片描述

3.删除
在这里插入图片描述
4. 参数选项和参数类型选项的使用
在这里插入图片描述

beanshell 基本使用

常用方法
// 获取局部变量并赋值
String data= vars.get(“data”);
// 设置局部变量
vars.put(“data”,data)

// 获取上一个接口的返回对象
prev.getResponseDataAsString();
// 获取上一个接口的状态码
prev.getResponseCode();

// 设置全局变量
props.put(“data”,data);
// 获取全局变量
props.get(“data”);

java 文件引入
source(“route”)
statement variable = new class.func(parameter,parameter);

jar 文件引入
import package.class
statement variable = new class.func(parameter,parameter);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值