解压下载的二进制包,进入bin目录,使用jmeter.bat启动程序。
启动之后会有两个窗口,一个cmd窗口,一个JMeter的 GUI。前面不要忽略,CMD窗口的提示信息:
下面cmd窗口内容的意思就是:不要使用GUI运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请不要使用GUI。
![ef8a19db6f2e199b30af346364129b01.png](https://img-blog.csdnimg.cn/img_convert/ef8a19db6f2e199b30af346364129b01.png)
一、添加线程组
官方默认为我们提供了简体中文。也可以通过 【Options】->【Choose Language】变更为简体中文。
所有的测试工作都是从新建一个线程组开始的。
它的作用其实是为了模拟用户,所以也叫Users。一个线程组模块可以包含多个线程,每个线程代表一个用户,这样可以模拟并发下的请求,并根据网站的响应信息来判断网站的相关性能。
![c84ee01999e3a91dc6c7e9a1dca6072a.png](https://img-blog.csdnimg.cn/img_convert/c84ee01999e3a91dc6c7e9a1dca6072a.png)
线程组包含很多属性,目前我们只关注线程属性那一块。其中线程数代表访问的并发数,默认是1。Ramp-UpPeriod表示多长时间内容启动所有线程,如果时间很短,会造成网站的瞬间高并发,默认值是1秒。循环次数是表示执行多少次,默认值为1,表示执行一次结束,这里可以勾选永远,让其一直运行下去。
设置线程数和循环次数。我这里设置线程数为500,循环1次。
![18a7c7b4ba4cbf9e4b4ef5bd1b6f105e.png](https://img-blog.csdnimg.cn/img_convert/18a7c7b4ba4cbf9e4b4ef5bd1b6f105e.png)
二、添加HTTP请求默认值
在我们刚刚创建的线程组上右键 【添加】-->【配置元件】-->【HTTP请求默认值】。
![8fedc1ca11f0f5ee09f447493b922af8.png](https://img-blog.csdnimg.cn/img_convert/8fedc1ca11f0f5ee09f447493b922af8.png)
配置我们需要进行测试的程序协议、地址和端口:
![ad9422784668e0b647ddc231c0228348.png](https://img-blog.csdnimg.cn/img_convert/ad9422784668e0b647ddc231c0228348.png)
当所有的接口测试的访问域名和端口都一样时,可以使用该元件,一旦服务器地址变更,只需要修改请求默认值即可。
三、添加HTTP请求
这里添加一个HTTP请求,用来访问网站的API接口。
![4251520b80af2e1302624ab14a507d9c.png](https://img-blog.csdnimg.cn/img_convert/4251520b80af2e1302624ab14a507d9c.png)
HTTP请求面板主要的目的是设置测试时候HTTP请求的相关信息,模拟浏览器访问或者其他程序访问后台的相关配置。
该面板主要的配置包括协议、服务器IP、端口、方法、路径和参数等内容,接下来可以将测试样例的相关信息填入。
这里测试使用的是自己搭建的web网站说明:
![2486bae3399d9e59549fd5ff802b53b3.png](https://img-blog.csdnimg.cn/img_convert/2486bae3399d9e59549fd5ff802b53b3.png)
四、添加HTTP请求头
在我们刚刚创建的线程组上右键 【添加】-->【配置元件】-->【HTTP信息头管理器】。
![6f63ba9c3f32f5f48fd6d3bb7d11997a.png](https://img-blog.csdnimg.cn/img_convert/6f63ba9c3f32f5f48fd6d3bb7d11997a.png)
因为我要传输的数据为json,所以设置一个 Content-Type:application/json
![b1afd65684c73118250211ba737f0ab6.png](https://img-blog.csdnimg.cn/img_convert/b1afd65684c73118250211ba737f0ab6.png)
五、添加断言
在刚刚创建的线程组上右键 【添加】-->【断言】-->【响应断言】。
![5994ae8add230cefa498e73fa05cb26e.png](https://img-blog.csdnimg.cn/img_convert/5994ae8add230cefa498e73fa05cb26e.png)
根据响应的数据来判断请求是否正常。我在这里只判断的响应代码是否为200。还可以配置错误信息:
![80cc8bf996ef0c0a02712573be34f0ae.png](https://img-blog.csdnimg.cn/img_convert/80cc8bf996ef0c0a02712573be34f0ae.png)
六、添加查看结果树
在刚刚创建的线程组上右键 【添加】-->【监听器】-->【察看结果树】。
![7b19b38304bcbdb33535c6453631d909.png](https://img-blog.csdnimg.cn/img_convert/7b19b38304bcbdb33535c6453631d909.png)
直接添加,然后点击运行按钮就可以看到结果了。
![f0d54a9c52f9794a6f3521ffde4c73f1.png](https://img-blog.csdnimg.cn/img_convert/f0d54a9c52f9794a6f3521ffde4c73f1.png)
在取样器结果中可以查看到响应头,响应数据大小,响应时间等信息。
![faabf7b6b6a6eb5ea75af35ac68de8a9.png](https://img-blog.csdnimg.cn/img_convert/faabf7b6b6a6eb5ea75af35ac68de8a9.png)
七、添加Summary Raport
在刚刚创建的线程组上右键 【添加】-->【监听器】-->【Summery Raport】。
![2340da2cd9da8fecaa52be6cc06e76d0.png](https://img-blog.csdnimg.cn/img_convert/2340da2cd9da8fecaa52be6cc06e76d0.png)
直接添加上,直接点击运行就可以看到结果了。
![ef8c285fe4f804bddd40eb5ad0d0c46f.png](https://img-blog.csdnimg.cn/img_convert/ef8c285fe4f804bddd40eb5ad0d0c46f.png)
八、执行测试计划
在创建的线程组上右键 【添加】-->【监听器】-->【图形结果】。
![8da016453be9423505f3b3d079b142ac.png](https://img-blog.csdnimg.cn/img_convert/8da016453be9423505f3b3d079b142ac.png)
点击执行后,选择图形结果,观察压力测试的数据内容
![289f465503f73aa2e70245f812994aa4.png](https://img-blog.csdnimg.cn/img_convert/289f465503f73aa2e70245f812994aa4.png)
如果需要用表格查看,可以【添加】-->【监听器】-->【用表格查看结果】。
![f334c3542c2446655f3e81123d6ad54a.png](https://img-blog.csdnimg.cn/img_convert/f334c3542c2446655f3e81123d6ad54a.png)
设置“用表格查看结果”的主要参数:
Configure:点击“Configure”按钮,在弹出的窗口中选中“Save Response Data” 项,以保存响应数据;也可根据自己需求勾选其他参数。
![ac5fd6c8dae65c000f1aaf9c9bfb1550.png](https://img-blog.csdnimg.cn/img_convert/ac5fd6c8dae65c000f1aaf9c9bfb1550.png)