文章目录
前言
Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。
一、Jmeter简介
1.我们为什么使用Jmeter
开源,免费,基于Java编写,可集成到其他系统可扩展各个功能插件支持接口测试,压力(负载和压力)测试等多种功能,支持录制回放,入门简单相较于自己编写框架或其他开源工具,有较为完善的UI界面,便于接口测试多平台支持,可在Linux,windows,Mac上运行,支持多协议。
2.Jmeter的作用
1.接口测试 postman/jmeter
2.性能测试 jmeter
3.数据库测试
3.安装JAVA环境
安装jdk
Jmeter文件,打开/bin/jmeter.bat
二、使用Jmeter测试快速入门
1.线程组是什么
进程: 一个正在执行的程序对应一个进程
线程: 一个进程有多个执行线程
线程组: 按照线程性质对线程分组
三者关系: 一个进程有多个线程组,一个线程组有多个线程
2.创建线程组
线程组主要包含三个参数:
线程数、准备时长、循环次数。
线程数:
虚拟用户数。一个虚拟用户占用一个线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
准备时长(秒):
设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20
个线程。也就是每秒钟启动2个线程。
循环次数:
每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总
请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
调度器:
设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)
持续时间(秒):
测试持续时间,会覆盖结束时间
启动延迟(秒):
测试延迟启动时间,会覆盖启动时间
启动时间:
测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会
覆盖它。
结束时间:
测试结束时间,持续时间会覆盖它。
3.创建http请求
通过察看结果树,我们可以看到每个请求的结果,其中红色的是出错的请求,绿色的为通过。