了解jmeter分布式测试,不做性能测试的傻白甜(一)

2020-06-19 17:25发布

首先我们来看下jmeter自动化测试的流程  ,见图1

在上图,我们可以看到 测试计算机的线程组, 发送500个并发请求给服务器,可能会面临两种情况

第一种:服务器崩了,你可以很开心的找开发,发现一个bug,这个bug不满足系统的性能需求,系统的性能需求是要求能并发600个并发请求,开发只能乖乖的去提升性能

第二种:你自己的测试计算机崩了,如果这个时候你再去找开发,开发会认为你"傻白甜"

自己的测试计算机崩了,原因在于测试计算机的资源不满足这么多的并发请求,所以你去找开发是没用的。

那么碰到这种情况该怎么办?

给测试计算机增加cpu,增加内存,硬盘?

还是多找几台计算机来协同工作,一起跑这个脚本,帮测试计算机分担下?

业内所有的选择都是多找几个计算机一起跑这个脚本?

那么怎么跑?

搞好多台计算机,大家谁也不管谁,都狂往服务器发送请求?

那是不可能地,我们说要做到“统筹兼顾”,得听出政治的味道来了?那就对了,很多政治理论是智慧的结晶,在任何领域都会用到。

那jmeter 是如何做到统筹兼顾的呢--------采用分布式测试的方式---------具体见下图:

通过上图,我们可以总结下jmeter分布式测试的特点

1、jmeter的分布式有一个主控制机,控制其他几台奴隶执行机

2、主控制机上安装jmeter软件,编写jmeter的脚本

3、奴隶执行机上面也安装jmeter软件,但脚本并不在奴隶执行机上,奴隶执行机只执行脚本

4、分布式流程为:jmeter主控制机控制奴隶执行机执行主控机的测试脚本,奴隶执行机发送并发请求给服务器,后续将性能测试的结果汇聚回主控制机。

好了,如果都get到了jmeter分布式测试的基本原理,下次教你怎么 在性能测试部分,面对面试官的反手掏~~~