基于jmeter完成压测

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: 基于jmeter完成压测

前言

jmeter算是我们日常比较常用的压测工具,这篇文章笔者就介绍一下基于win10完成jmeter的安装及使用。

安装

下载

首先我们必须到达官网下载对应的安装包。

https://archive.apache.org/dist/jmeter/binaries/(opens new window)


注意下载的时候必须下载Binaries类型而非源码类型,否则启动时可能会抛出Unable to access jarfile ApacheJMeter,如下图所示,笔者本次下载的就是5.1版本。

38069de30449b978c2a639617bdaad59.png

配置环境变量

完成下载后,我们可以将jmeter存放到自己喜欢的目录然后设置环境变量。首先添加一个环境变量JMETER_HOME,值为jmeter的存放路径


6afc733ec6c0bacdfe2d1dd5199d9ac4.png


然后在环境变量path添加一条%JMETER_HOME%\bin

启动测试

配置完成环境变量后,我们就可以启动测试可用性了,我们打开cmd控制台输入jmeter,如下所示,如果输出这样一段文字并且启动的jmeter的图形界面则说明安装成功了。


C:\Users\shark-Gao>jmeter
================================================================================
Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use CLI Mode (was NON GUI):
   jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
& increase Java Heap to meet your test requirements:
   Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file
Check : https://jmeter.apache.org/usermanual/best-practices.html
================================================================================

调整为中文

我们进入apache-jmeter-5.1\bin找到文件jmeter.properties,如下图,找到language改为zh_CN,下次启动直接生效。

501450d0e5c388192c1e06e3baae235f.png

压测

创建线程组

要进行压测,我们首先需要创建一个线程组。如下图所示:


b65fdeba99df3326ed13c309a1fde3e2.png


创建线程组之后,我们就可以设置线程组名称,压测参数。


a7bd2ffdd4abd37f545bc6736f59303e.png


创建压测地址

如下图,右键创建HTTP请求。


da1cd47ca83ae3ff99d273d54046c526.png


输入请求的协议类型,地址、端口号、映射路径、参数等。


c5c6d5d1831f392d2787a349f4e3fff9.png


添加结果树和聚合报告

然后我们就可以进行压测了,但是笔者希望看到压测结果和聚合报告,这时候我们就可以右键刚刚创建的HTTP请求,添加结果树和聚合报告


5ecb64b02ab810f85d9acec94e107b17.png


点击启动进行压测


如下图,我们点击这个绿色按钮即可开始压测。


5fb7226b102e8229d9d1bdccb4ce286d.png


点击结果树就能看到请求结果


6c7da6af9010130b1e06a8103062f013.png


点击聚合报告就能看到性能测试报告


6c7da6af9010130b1e06a8103062f013.png


基于Jmeter测试POST请求


了解了jmeter整体的操作之后,我们再来补充一下日常用的最多的json传参的post请求,由于jmeter界面发起POST稍微有些麻烦,所以笔者就在这里补充一下post请求的配置步骤:


首先自然是填写HTTP请求的常规信息,如下图,设置请求方式、映射地址、请求参数、端口号等信息:


e1d9c835fb63962a332b945482a267e5.png

重点来了,我们必须手动创建HTTP信息头管理器,配置文本类型告知Jmeter我们当前发起的请求是参数为JSON格式的POST请求,如下图所示点击对应选项创建HTTP信息头管理器。

ee16f08a3311f167e0a3064a337dd867.png


如下图,key和value分别配置Content-Type和application/json;charset=UTF-8,完成信息头的配置之后,我们就可以发起POST请求开始着手压测了。


9a63c56dbcee8bb11e077398208c0ce0.png

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
15天前
|
测试技术 持续交付 Apache
深度挖掘:Python性能测试中JMeter与Locust的隐藏技能🔍
【8月更文挑战第5天】随着软件规模扩大,性能测试对系统稳定性至关重要。Apache JMeter和Locust是两大主流工具,各有千秋。本文探索它们在Python环境下的进阶用法,挖掘更多性能测试潜力。JMeter功能强大,支持多种协议,可通过命令行模式执行复杂测试计划,并与Python集成实现动态测试数据生成。Locust基于Python,通过编写简洁脚本模拟HTTP请求,支持自定义请求及与Python库深度集成。掌握这些技巧可实现高度定制化测试场景,有效识别性能瓶颈,提升应用稳定性。
59 1
|
15天前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【8月更文挑战第5天】性能测试确保应用高负载下稳定运行。Apache JMeter与Locust是两大利器,助力识别解决性能瓶颈。本文介绍这两款工具的应用与优化技巧,并通过实战示例展示性能测试流程。首先,通过JMeter测试静态与动态资源;接着,利用Locust的Python脚本模拟HTTP请求。文中提供安装指南、命令行运行示例与性能优化建议,帮助读者掌握性能测试核心技能。
42 0
|
16天前
|
消息中间件 Java 测试技术
Python性能测试全攻略:JMeter与Locust,双剑合璧斩断性能瓶颈🗡️
【8月更文挑战第4天】在软件开发中,性能至关重要。对Python开发者来说,掌握高效性能测试方法尤为关键。本文将带您探索性能测试工具JMeter与Locust的强大功能。JMeter作为Java世界的巨擘,以其强大功能和灵活性在性能测试领域占有一席之地,不仅适用于Java应用,也能测试Python Web服务。
40 0
|
9天前
|
存储 监控 数据可视化
性能监控之JMeter分布式压测轻量日志解决方案
【8月更文挑战第11天】性能监控之JMeter分布式压测轻量日志解决方案
26 0
性能监控之JMeter分布式压测轻量日志解决方案
|
14天前
|
监控 Java 测试技术
实战派必看!Python性能测试中,JMeter与Locust如何助力性能调优
【8月更文挑战第6天】性能优化是软件开发的关键。本文介绍JMeter与Locust两款流行性能测试工具,演示如何用于Python应用的性能调优。JMeter可模拟大量用户并发访问,支持多种协议;Locust用Python编写,易于定制用户行为并模拟高并发。根据场景选择合适工具,确保应用在高负载下的稳定运行。
38 4
|
14天前
|
测试技术 持续交付 Apache
性能测试不再愁!Python+JMeter+Locust,三步打造高性能应用
【8月更文挑战第6天】互联网快速发展,应用性能成为关键指标。性能测试至关重要,但复杂环境和多样需求构成挑战。Python、JMeter与Locust三剑客提供高效解决方案。Python语法简洁、库丰富;JMeter支持图形界面和多协议测试;Locust基于Python,简单易用且高度可扩展。结合使用,能满足复杂测试需求,保证灵活性与效率。通过具体步骤和示例,本文将引导您掌握这些工具,打造高性能应用。
41 3
|
15天前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【8月更文挑战第5天】随着软件应用的扩展,性能测试至关重要。Apache JMeter是一款成熟且功能强大的开源工具,支持多种协议,可通过命令行模式执行复杂测试计划,并能与Python集成实现自动化。Locust则是一个基于Python的负载测试工具,通过简单脚本模拟HTTP请求,特别适合Web应用测试,支持自定义请求和深度集成Python库。两者各有优势:JMeter适用于多种应用测试,有直观图形界面;Locust专注HTTP请求,对熟悉Python的开发者更为灵活。结合Python的强大功能,这些工具能帮助我们深入挖掘性能测试潜力,提高应用的稳定性和可靠性。
42 3
|
14天前
|
测试技术 数据库 UED
Python 性能测试进阶之路:JMeter 与 Locust 的强强联合,解锁性能极限
【8月更文挑战第6天】在数字化时代,确保软件在高并发下的稳定性至关重要。Python 提供了强大的性能测试工具,如 JMeter 和 Locust。JMeter 可配置复杂请求场景,而 Locust 则以 Python 脚本灵活模拟真实用户行为。两者结合,可全面评估系统性能。例如,对电商网站进行测试时,JMeter 模拟登录请求,Locust 定义浏览和购物行为,共同揭示系统瓶颈并指导优化,从而保证稳定高效的用户体验。
28 1
|
16天前
|
监控 Java 测试技术
🔥Python性能测试大揭秘!JMeter与Locust如何让你的应用跑出新速度🚀
【8月更文挑战第4天】在软件开发中,性能测试确保应用稳定高效。JMeter与Locust是两大性能测试利器。JMeter源自Apache,基于Java,支持多协议测试,提供丰富测试场景与直观结果展示。Locust专为Python打造,采用Python脚本定义测试场景,支持分布式测试与实时监控。选择时考虑应用语言与团队技能。正确的测试策略结合合适工具,助您的应用性能更上一层楼。🚀
29 1
|
14天前
|
测试技术 Apache 开发者
性能测试新纪元!Python携手JMeter与Locust,开启应用性能优化新篇章
【8月更文挑战第6天】应用性能测试是软件开发的关键环节。随着云技术和微服务架构的发展,传统测试方法已难以满足需求。Python 作为一种灵活强大的语言,在性能测试中扮演重要角色。本文探讨 Python 与 Apache JMeter 及 Locust 的结合如何开启性能优化新篇章。JMeter 适用于多种协议的压力测试,而 Locust 用 Python 定义测试场景,两者各具特色。
29 0