当前位置:网站首页>jmeter性能测试步骤实战教程
jmeter性能测试步骤实战教程
2022-07-06 07:20:00 【自动化测试君】
1. Jmeter是什么?
2. Jmeter安装
2.1 JDK安装
由于Jmeter是基于java开发,首先需要下载安装JDK (目前JMeter只支持到Java 8,尚不支持 Java 9)
1. 官网下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
2. 选择Java SE 8u151/ 8u152,点击JDK下载
3. 安装下载的JDK
4. 配置系统环境变量
2.2 JMeter安装
官网下载地址:http://jmeter.apache.org/download_jmeter.cgi
下载最新JMeter 5.5版本:apache-jmeter-5.5.zip
下载完成后解压zip包
启动JMeter
双击JMeter解压路径(apache-jmeter-5.5\bin)bin下面的jmeter.bat即可
3. 测试实例
我们选取最常见的百度搜索接口:
3.1 接口地址
http://www.baidu.com/s?ie=utf-8&wd=jmeter性能测试
3.2 请求参数
ie:编码方式,默认为utf-8
wd: 搜索词
3.3 返回结果
搜索结果,我们可以通过校验结果中是否含有搜索词wd来判断本次请求成功或失败。
4. JMeter脚本编写
4.1 添加线程组
右键点击“测试计划” -> “添加” -> “Threads(Users)” -> “线程组”
这里可以配置线程组名称,线程数,准备时长(Ramp-Up Period(in seconds))循环次数,调度器等参数:
因为接口调试需要,我们暂时均使用默认设置,待后面真正执行性能测试时再回来配置。
4.2 添加HTTP请求
右键点击“线程组” -> “添加” -> “Sampler” -> “HTTP请求”
对于我们的接口http://www.baidu.com/s?ie=utf-8&wd=jmeter性能测试,可以参考下图填写:
Http请求主要参数详解:
4.3 添加察看结果树
右键点击“线程组” -> “添加” -> “监听器” -> “察看结果树”
这时,我们运行Http请求,修改响应数据格式为“HTML Source Formatted”,可以看到本次搜索返回结果页面标题为”jmeter性能测试_百度搜索“。
4.4 添加用户自定义变量
我们可以添加用户自定义变量用以Http请求参数化,右键点击“线程组” -> “添加” -> “配置元件” -> “用户定义的变量”:
新增一个参数wd,存放搜索词:
并在Http请求中使用该参数,格式为:${wd}
4.5 添加断言
右键点击“HTTP请求” -> “添加”-> “断言” -> “响应断言”
我们校验返回的文本中是否包含搜索词,添加参数${wd}到要测试的模式中:
4.6 添加断言结果
右键点击“HTTP请求” -> “添加”-> “监听器” -> “断言结果”
这时,我们再运行一次就可以看到断言结果成功或失败了
4.7 添加聚合报告
右键点击“线程组” -> “添加” -> “监听器” -> “聚合报告”,用以存放性能测试报告
这样,我们就完成了一个完整Http接口的JMeter性能测试脚本编写。
5. 执行性能测试
5.1 配置线程组
点击线程组,配置本次性能测试相关参数:线程数,循环次数,持续时间等,这里我们配置并发用户数为10,持续时间为60s
5.2 执行测试
点击绿色小箭头按钮即可启动测试,测试之前需要点击小扫把按钮清除之前的调试结果。
6. 分析测试报告
待性能测试执行完成后,打开聚合报告可以看到:
如果这篇文章对你有帮助,请给小编点个赞!这样我才有动力继续更新下去!
今天的小知识学会了么
欢迎在留言区跟我们互动噢~
觉得有所帮助的话点个赞呗
最后是小编自己整理的一些学习资料笔记和上述jmeter测试性能工具全套使用教程
想要小编学习资料笔记文档和上述postman接口测试工具全套使用教程
【私信我关键词“999”免费获取】高薪简历模板(面试宝典免费领)
高薪简历模板(面试宝典免费领)
高薪简历模板(面试宝典免费领)
边栏推荐
- 1189. Maximum number of "balloons"
- Structure summary of SystemVerilog integrable model
- 杰理之AD 系列 MIDI 功能说明【篇】
- GET/POST/PUT/PATCH/DELETE含义
- Crawling exercise: Notice of crawling Henan Agricultural University
- What does UDP attack mean? UDP attack prevention measures
- 作者已死?AI正用艺术征服人类
- 杰理之需要修改 gatt 的 profile 定义【篇】
- 可变参数重载时的内存错误
- JDBC学习笔记
猜你喜欢
作者已死?AI正用藝術征服人類
NiO programming introduction
CDN acceleration and cracking anti-theft chain function
SSM学习
leetcode704. Binary search (find an element, simple, different writing)
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
ORACLE列转行--某字段按指定分隔符转多行
The way to learn go (I) the basic introduction of go to the first HelloWorld
The best way to learn SEO: search engine
杰理之如若需要大包发送,需要手机端修改 MTU【篇】
随机推荐
[JDBC] quick start tutorial
leetcode1020. 飞地的数量(中等)
Lesson 12 study notes 2022.02.11
Idea console color log
Cookie Technology & session Technology & ServletContext object
JDBC learning notes
The best way to learn SEO: search engine
杰理之普通透传测试---做数传搭配 APP 通信【篇】
OpenJudge NOI 2.1 1749:数字方格
1091: two or three things in childhood (multi instance test)
C - Inheritance - hidden method
位运算异或
树莓派3B更新vim
Seriously recommend several machine learning official account
Uncaught TypeError: Cannot red propertites of undefined(reading ‘beforeEach‘)解决方案
TS Basics
Raspberry pie 3B update VIM
Typescript variable scope
The way to learn go (I) the basic introduction of go to the first HelloWorld
微信脑力比拼答题小程序_支持流量主带最新题库文件