栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Jmeter压力测试流程

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Jmeter压力测试流程

一、准备

官网下载Apache JMeter - Download Apache JMeter

 

下载解压到本地盘

一定要先设置JAVA的环境变量

变量名: JAVA_HOME

变量值: D:/YJYJ/Java8/jdk1.8.0_201

然后环境添加: %JAVA_HOME%bin

1、打开GUI界面

执行 ./apache-jmeter-5.4.1/bin/jmeter.bat 文件 此时即可看到其GUI界面。

 

2、更改语言为中文

操作路径 【Options】- 【Choose Language】- 【Chinese(Simplified)】

 

永久4设置

进入apache-jmeter-5.2.1bin目录 找到“jmeter.properties”文件 在文件的第37行后添加“language zh_CN” 保存之后再打开jmeter就永久变为中文环境了。修改字体:

jsyntaxtextarea.font.family Hack #1169行
jsyntaxtextarea.font.size 14

修改背景颜色

工具栏,选项-外观-

3、创建测试文件夹

在 ./**apache-jmeter-5.4.1/bin/文件夹中创建一个名为plan的文件夹

用来保存测试计划及其测试结果。

二、创建测试

测试计划名称可以修改,可以添加注释

1、创建线程组

操作路径 【添加】-- 【线程(用户)】-- 【线程组】

 

并设置接口名称、线程数(并发同时请求数)、循环次数

(1)线程数 即虚拟用户数。设置多少个线程数也就是设置多少虚拟用户数

(2)Ramp-Up时间(秒) 设置虚拟用户数全部启动的时长。如果线程数为20,准备时长为10秒,那么需要10秒钟启动20个线程。也就是平均每秒启动2个线程。一般设置为1s内发送多少个线程数即可.

*(3)循环次数** 每个线程发送请求的个数。如果线程数为20,循环次数为10,那么每个线程发送10次请求。总请求数为2010 200。如果勾选了“永远”, 那么所有线程会一直发送请求,直到手动点击工具栏上的停止按钮,或者设置的线程时间结束。

 

2、配置元件(可以省略)

操作路径 【添加】-- 【配置元件】-- 【HTTP请求默认值】

 

并填上测试接口的协议、服务器名称或IP、端口号  

 

3、构造HTTP请求

操作路径 【添加】- 【取样器】-- 【HTTP 请求】

 

 

修改HTTP请求的类型 并填上接口路径

再点击消息体数据 填上请求参数

 

如果为开放平台的接口:在web服务器中需要修改

协议: https (多了一个s)

服务器名称或ip: 如 ai.ylzinfo.com

4、添加断言

操作路径 【添加】-- 【断言】-- 【响应断言】

 

用于判断返回内容是否正常

点击响应代码、相等 在测试模式填上正常返回内容 比如200

填上自定义失败消息 可选

 

 注意:填200 后不要按回车,否者会识别为换行符. 到时候对此错误:

Assertion error:false
Assertion failure:true
Assertion failure message:Test failed: code expected to equal /
****** received : 200[[[ ]]]
****** comparison: 200[[[
/
5、添加察看结果树

操作路径 【添加】-- 【监听器】-- 【察看结果树】

 点击运行 即可看到每个请求的返回内容

 

6、 其他查看形式

用表格查看结果

可以看到请求时间,传输大小,是否返回正常

 

 

聚合报告

可以查看平均值,中位数,90%分位,95%分位,99%分位,最小值,最大值,异常比例,吞吐量,接收速度跟发送速度

 

图形结果

可以查看请求时间分布等

 

 

6、保存测试计划

在 ./**apache-jmeter-5.4.1/bin/plan/文件夹中创建一个名为yg的文件夹

点击保存 并重命名文件 例如yg.jmx

将其保存至相应文件夹中 例如 ./**apache-jmeter-5.4.1/bin/plan/yg/**

 

7、带token的设置

添加-配置元件-HTTP信息头管理

添加:

四、参考

Content-Type : application/json;charset UTF-8

Authorization: token值

 

以上是静态token,如果是动态token,则再建请求来获取token

发请求获取token

 

json提取器

JSON Path expressions: $.xxxx xxxx为获取token的返回结果的方式

 将提取的token设为全局变量

${__setProperty(newtoken,${token})}

 将全局变量newtoken放进请求头给后续请求使用

${__property(newtoken)}

全局token设置完成

参考(jmeter设置全局变量token - 橙子皮 - 博客园):

 

三、执行测试计划 1、执行测试
jmeter -n -t plan/yg/yg.jmx -l plan/yg/result/result.txt -e -o plan/yg/webreport

说明

-t 为测试计划文件路径

-l 为测试结果文件路径

-o 为web报告保存路径

如果result 跟webreport 已经存在,则必须先删除,或者重命名

2、查看报告

双击./**apache-jmeter-5.4.1/bin/plan/yg/webreport/index.html**可查看其报告。

3、参数解释

Sample:本次测试场景共运行多少线程

Average:平均响应时间

Median:统计意义上的响应时间中值

详细流程 使用 JMeter 进行压力测试 - 晓晨Master - 博客园

90% line:所有线程中90%的线程响应时间都小于xx的值;

Min:响应最小时间

Max:响应最大时间

Error:出错率

Throughput - 吞吐量以“requests/second、requests /minute、 requests /hour”来衡量。 时间单位已经被选取为second 所以 显示速率至少是1.0 即每秒1个请求。 当吞吐量被保存到CVS文件时 采用的是requests/second 所以30.0 requests/second 在CVS中被保存为0.5

Kb/sec - 以Kilobytes/seond来衡量的吞吐量

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267229.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号