怎么使用JMeter进行性能测试?

一、简介

JMeter是Apache软件基金会下的一款开源的性能测试工具,完全由Java开发。它专注于对我们应用程序进行负载测试和性能测量,最初设计用于web应用程序,现在已经扩展到其他测试功能,比如:FTP、Database和LDAP等。

Apache JMeter可以用来测试静态和动态资源,以及Web动态应用程序。它可以用来模拟对服务器,一组服务器,网络或对象施加重负载,以测试其强度或分析在不同负载类型下的整体性能。

二、下载

jmeter官网:https://jmeter.apache.org/

下载到本地后解压,配置环境变量即可使用。

JMETER_HOME

三、配置

1. 新建线程组

测试计划 -> 添加 -> 线程(用户)-> 线程组

2. 添加HTTP请求

也就是添加要测试的接口,一个线程组内可以添加多个HTTP请求。

线程组 -> 添加 -> 取样器 -> HTTP请求

3. 添加HTTP信息头管理器

线程组 -> 添加 -> 配置元件 -> HTTP信息管理头

HTTP信息管理头主要是用来配置我们的header里面的信息,比如用户登录成功后拿到access_token后,需要提供给后续的接口用来测试。

我们在建好的HTTP信息管理头内,放入我们的access_token配置,这里的值等用户登录成功拿到access_token后填充。

4. 添加登录请求
5. 添加后置处理器,获取access_token

登录请求 -> 添加 -> 后置处理器 -> JSON提取器

6.配置其它请求验证是否取到token

以查询所有客户信息为例

在请求之前我们先创建一个结果树,方便发起请求。

线程组 -> 添加 -> 监听器 -> 查看结果树

7.配置线程组信息

线程数就是并发的的意思。

线程数1,循环次数100次,就是一个用户循环请求100次

线程数50,循环10次,就是50个用户,每个用户循环调用10次

8.不同线程组怎么共享变量

之前我们通过登录获取token,并且给其它测试接口使用,是发生在同一线程组内的,如果不同的线程组就会获取不到token了。

如下图所示,新建一个线程组2,并创建一个HTTP请求,线程组1进行登录,返回token,在线程组2内拿不到。

要想跨线程组共享变量,就需要使用BeanShell后置处理器,将access_token设为全局变量。

线程组1 -> 添加 -> 后置处理器 -> BeanShell 后置处理程序

{__setProperty(token,{access_token},)};

在线程组中设置为全局变量后,在线程组2中的HTTP信息管理头中,获取全局变量。

${__P(token,)}

最后,在测试计划处设置独立运行每个线程组

全部设置完成后,我们来跑一把。

可以看到线程组2中的HTTP请求,已经可以拿到全局的token使用了。

相关推荐
天堂的恶魔94610 小时前
软件测试 —— 性能测试(jmeter)
jmeter
Monee..10 小时前
【jmeter】下载及使用教程【mac】
jmeter
Allen Bright10 小时前
使用 JMeter 的 Autostop Listener 插件:自动化性能测试的守护者
运维·jmeter·自动化
测试者家园1 天前
JMeter + Grafana +InfluxDB性能监控
软件测试·jmeter·性能测试·grafana·性能监控·质量效能
沉下去,苦磨练!1 天前
influxdb+grafana+jmeter
jmeter·grafana
vip1024p1 天前
全面指南:使用JMeter进行性能压测与性能优化(中间件压测、数据库压测、分布式集群压测、调优)
jmeter·中间件·性能优化
小馋喵知识杂货铺2 天前
JMeter 测试Dubbo 接口
jmeter·dubbo
Feng.Lee3 天前
性能测试实时监听工具Influx+Grafana
测试工具·jmeter·grafana
Hello Dam3 天前
Jmeter 动态参数压力测试时间段预定接口
jmeter·spring cloud·springboot·压力测试
zfj3213 天前
学技术学英文:通过jmeter命令行工具生成聚合报告文件到csv文件
jmeter·命令行工具·聚合报告·导出到csv·批量生成聚合报告