最近接了组里压测的任务,开始仔细钻研Jmeter了。之前也压过,但每次RD问压测的指标等问题,感觉都很懵不知道该怎么回答。借这个机会一鼓作气搞明白吧!
Jmeter安装插件
有个插件叫jp@gc Stepping Thread Group,最早开始做压测用的就是这个插件。它能做到控制并发量慢慢上升,最终达到一个峰值,渐进式的加压。
安装方法很简单,先下载插件jar包
https://jmeter-plugins.org/downloads/all/
在这个网址下载plugins-manager.jar,然后放在apache-jmeter/lib/ext目录下,启动jmeter
启动后,在Options菜单中就多了plugins manager的选项,里面可以添加插件jpgc - Standard Set。
关于一些设定
因为现在开始用公司的压测平台,担心一些插件不支持,所以打算用jmeter自带的那些设置去设置plan,不用stepping thread group那种傻瓜设定,这样也有助于去理解一些本质上的东西。
线程组
线程组分为setUp Thread Group、tearDown Thread Group、Thread Group。作用分别是预处理、善后和普通的线程组。执行起来顺序是1、3、2。
目前尝试在普通的线程组同级添加一个setUp Thread Group,用来做预热。
线程组设置
Ramp-up Period(in seconds):设置的N个线程数在多少秒内启动完毕。平均分,比如5秒5个线程,那就一秒启动一个线程。
Delay Thread Creation until needed:配合Ramp-up Period使用。勾选此项时,所有线程会在需要时启动,意思是说在Ramp-up Period到时间后启动所有线程。
如不勾选此项,有可能发生的一种情况是,跑单个线程的时长比Ramp-up Period设置的时间短,那么同时活跃的线程数可能比预想要少。如果勾选此项,那么线程会按Ramp-up Period的设置来创建,但不会启动。等到线程数达到预先的设置了,才会一起启动。
Duration(持续时间):本线程组测试持续时间。要比Ramp-up Period设置的大。持续时间和循环,以持续时间的结束时间设置为准。