Jmeter学习笔记之 设置集结点

最近一直在学习Jmeter的使用,jmeter是一款功能十分强大的测试工具,闲暇之余准备把自己学的笔记一一整理出来,也算是记录,也算是分享,希望有此问题的人看到这篇文章能够解决你的部分问题,也欢迎大家留言进行讨论。
好了,言归正传,首先我们要先理解集结点的意思。
集结点:简单来理解一下,虽然我们现在做的“性能测试”理解为“多用户并发测试”,但实际上在jmeter操作中真正的并发是不存在的,在每一个请求发送的时候总会存在毫秒的误差,这就无法做到真正的并发,而为了让我们能够更真实的实现完全并发这一概念,我们可以设置集合点来完成这一操作。
1.首先建一个简单的http请求
TestPlan—右键add----Thread(users)—Thread group //建一个线程组
Jmeter学习笔记之 设置集结点_第1张图片
2. 我们来设置Thread Group的属性
number of thread(users):线程数
rame-up : 决定多长时间启动所有线程。如果使用10个线程,ramp-up period是100秒,那么JMeter用100秒使所有10个线程启动并运行。每个线程会在上一个线程启动后10秒(100/10)启动。假设ramp-up period 设置成T 秒, 全部线程数设置成N个, JMeter 将每隔T/N秒建立一个线程。
Jmeter学习笔记之 设置集结点_第2张图片
3.新建一个简单的http请求
右键thread group —add–sampler----http request
然后我们简单设置一下 这个sampler的一些属性
Jmeter学习笔记之 设置集结点_第3张图片
4.设置一个返回结果
右键thread group —add–listener----view results tree in table //这个是用来查看结果的
Jmeter学习笔记之 设置集结点_第4张图片

我们现在ramp-up的值为1 线程总数为5 1s之内5个线程都要运行完毕 理论上这样达到了并发的效果 在不设置集结点的时候 我们来测试一下 看结果是
Jmeter学习笔记之 设置集结点_第5张图片
可以明显的看到 虽然是1S之内5个线程全部运行完毕,但是并未做到完全的并发,每个线程之间都是有极其微小的时间差距的。

6.接下来引入我们今天介绍的重点 ————为了完全的并发而设置集结点
接着之前创建的脚本,右键点击---->timer---->Synchronizing Timer
这样子就添加了一个“集合点”,下面来设置一下集合点。
Jmeter学习笔记之 设置集结点_第6张图片
特别要注意的地方:
1.集结的group用户数量一定要比线程组的数量小。 否则因为无法集结到设定的用户,导致测试无法进行。
2. 集结的用户数和线程组并发用户数的关系:
例如线程组设定的用户是10, 集结点设置的用户组数量是5, 那么当集结了5个用户后,就会立即开始测试。 当集结了下一组5个用户后,会立即开始另外5个用户的测试。

所以在这里 我们设置集结的用户数为:5

ok设置完毕后再跑一次看看效果
Jmeter学习笔记之 设置集结点_第7张图片
可以清晰的看到 每个开始的时间基本上已经完全一致 已经高度接近了完全并发这个概念

如果5个线程 ramp-up=1不够明显
我们现在再设置线程数为15 ramp-up =2

未设置集结点时:
Jmeter学习笔记之 设置集结点_第8张图片
设置集结点后:Jmeter学习笔记之 设置集结点_第9张图片
差距很明显的就可以看出来了 .

ok 今天的设置集结点就介绍到这里 希望能帮助到有需要的同学

你可能感兴趣的:(Jmeter学习笔记之 设置集结点)