Jmeter是一种基于Java的压力测试工具,由apache组织开发。它的设计初衷是用于Web应用方面的测试,如软件压力测试,但后来逐渐的扩展到其他测试领域。 目前我们可以用它测试接口功能,返回参数等是否正常,它可以模拟相当的资源调用压力,测试服务器应对不同压力的能力和整体性能,Jmeter的作为一款自动化测试工具,它不仅仅能用于测试接口,还能用于测试数据库、FTP服务器能等等。
一、Jmeter的优势
1.Jmeter是Apache组织开发的一款免费开源软件,它可以根据实际需求扩展各个功能
2.支持接口测试、压力测试,入门简单,操作便捷
3.支持多平台,可在Linux、Windows、Mac上进行测试使用。
二、环境准备
1.安装JDK
版本:jdk8或者jdk9
2.在官网上下载jmeter
版本:http://mirrors.hust.edu.cn/apache//jmeter/binaries/apache-jmeter-4.0.zip
连接复制到浏览器中直接会进行下载
三、操作设置
3.1 基础操作
以Windows平台为例,解压jmeter压缩包之后,打开bin文件夹,找到jmeter.bat,别犹豫,双击打开,软件加载完毕后会打开一个jmeter客户端(为了下次打开方便,可以给它设置一个桌面快捷方式,下次可以从桌面直接打开),客户端的界面如下图所示:
3.1.1修改名称
可以给testplan修改名称,在name中输入预先想好的测试代号,或是别的名称
3.1.2新增线程组
新增一个线程组用于测试,如图,右键test plan(压力测试)–>add–>Threads(Users)–>Thread Group,完成线程组的创建
3.1.3新增观测器
新增一个观测器用于检测返回结果,如图,右键Thread Group–>Listener–>View Results Tree,完成观测器的创建。
3.1.4新增HTTP请求
通过新建HTTP Request分别处理增删改查各个接口测试
3.2添加配置
3.2.1线程组参数配置
1、停止正在运行的线程
2、清除结果树中的记录
3、线程持续运行了多久
4、总体进度,比如1000个线程组已经进行到第几个了
5、设置线程组数量
6、设置所有的线程组在一定时间内并发启动(设置成0就是直接全部并发启动),这个时间设置比较讲究,如1000个线程你设置它在5秒内全部启动,那它就会在5秒内全部启动,可能服务器承受不了这么大的压力,或者你设置了100秒内全部启动,可能设置过大了,既浪费时间,又测不出性能,所以这个参数设置需要看实际情况调整。
7、设置循环参数(forever选项打上勾的话,jmeter就会一直运行,哪怕是所有的线程都运行完了,直到你关闭它)
8、设置9和10选项必须给sceduler打上勾
9、设置jmeter整体运行时间,超过duration的时间设置,无论所有线程运行完没有,都会关闭
10、设置启动延时,比如你需要在晚上测试,白天就可以计算好时间让它在晚上运行