当前位置: 首页 > news >正文

利用jmeter完成简单的压力测试

Jmeter是一个非常好用的压力测试工具。Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好。

1、什么是压力测试

顾名思义:压力测试,就是 被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况)

比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速度是否会变慢,或者网站是否会奔溃

2、做压力测试的常用工具

做压力测试,一般要使用工具,人工是没办法做的。最常用的工具是LoadRunner,但是LoadRunner毕竟是收费软件,而且使用上也比较复杂。现在越来越多的人开始使用Jmeter来做压力测试。(免费的,而且使用上非常简单。)

做压力测试的步骤如下:

1.写脚本 或者录制脚本

2.使用用户自定义参数

3.场景设计

4.使用控制器,来控制 模拟多少用户。

5.使用监听器, 查看测试结果

3、本文做压力测试的例子

本文举的实例是:在一台电脑用Jmeter模拟200个用户,同时去使用bing搜索不同的关键字,查看页面返回的时间是否在正常范围内。

第一步:使用CSVDataSetConfig 来参数化

首先我们把测试需要用到的2个参数放在txt文件中,新建一个data.txt文件,输入些数据,一行有两个数据,用逗号分隔。
在这里插入图片描述
启动Jmeter, 先添加一个Thread Group, 然后添加一个CSV Data Set Config (Add -> Config Element -> CSV Data Set Config)
IMG_257
第二步:添加HTTP Request.

我们添加http 请求,发送get 到http中。选择Thread Group 右键 (Add ->Sampler -> HTTP Request), 需要填的数据如下:
IMG_258
第三步: 使用Thread Group, 控制模拟多少用户

选中Thread Group:
IMG_259
Number of Threads(users):一个用户占一个线程, 200个线程就是模拟200个用户

Ramp-Up Period(in seconds):设置线程需要多长时间全部启动。如果线程数为200 ,准备时长为10,那么需要1秒钟启动20个线程。也就是每秒钟启动20个线程。

Loop Count:每个线程发送请求的次数。如果线程数为200 ,循环次数为10,那么每个线程发送10次请求。总请求数为200*10=2000。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。

第四步:添加Summary Report 用来查看测试结果

选中Thread Group 右键(Add -> Listener -> Summary Report)

第五步:运行一下

到目前为止,脚本就全写好了,我们来运行下,如何看下测试的结果。
IMG_260

文章来源:网络 版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理

http://www.lryc.cn/news/294423.html

相关文章:

  • 【手写数据库toadb】toadb物理存储模型,数据库物理存储原理,物理文件组织关系以及行列混合模型存储结构
  • MySQL-----DDL基础操作
  • 【MySQL】在 Centos7 环境安装 MySQL -- 详细完整教程
  • 理解React中的setState()方法
  • 数据库管理-第144期 深入使用EMCC-01(20240204)
  • flask_django_python五金电商网络营销的可视化分析研究
  • Java并发(二十三)----同步模式之保护性暂停
  • ###C语言程序设计-----C语言学习(9)#函数基础
  • Dockerfile文件参数配置和使用
  • Java实现婚恋交友网站 JAVA+Vue+SpringBoot+MySQL
  • React16源码: React中详解在渲染阶段Suspend的源码实现
  • mac电脑风扇控制软件:Macs Fan Control Pro for mac 激活版
  • easyexcel解析跨多行的数据
  • 双目相机立体匹配基础
  • 【图论】网络流
  • 【Matplotlib】figure方法 你真的会了吗!?
  • [C++]继承(续)
  • 恒创科技:服务器内存不足影响大吗?
  • 深入理解网络通信和TCP/IP协议
  • Open CASCADE学习|分割曲线
  • vulhub中Adminer远程文件读取漏洞复现(CVE-2021-43008)
  • MOS管驱动电流估算-Qg参数
  • Vision Transfomer系列第一节---从0到1的源码实现
  • 【CSS + ElementUI】更改 el-carousel 指示器样式且隐藏左右箭头
  • Ubuntu 22.04 上安装和使用 Go
  • ES6-const
  • Android消息通知Notification
  • 2V2无人机红蓝对抗仿真
  • VUE3语法--computed计算属性中get和set使用案例
  • Linux cd 和 df 命令执行异常