本文主要是介绍【Jmeter】- 集合点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、什么是集合点?
让所有请求在不满足条件的时候处于等待状态。
为什么这样设置:虽然我们的“性能测试”理解为“多用户并发测试”,但真正的并发是不存在的,为了更真实的实现并发这感念,我们可以在需要压力的地方设置集合点。以用户和密码的地方,每到输入用户名和密码登录的地方,所有的虚拟用户都相互之间等一等,然后,一起访问。(红军排长说:等一等!大家一起冲啊!这样给敌人的压力是很大的。)
2、如何实现?
使用jmeter中的同步计时器Synchronizing Timer
来实现
3、集合点的位置
- 同步定时器是在每一个采集器之前执行的,不管定时器的位置是在采集器之前还是之后,都是在采集器之前执行。
- 如果一个线程中存在多个采集器,同步定时器和这些采集器在同一级(同一节点下),则同时作用于这些采集器。
- 如果需要一个定时器单独对应某一个采集器,可以在采集器的子节点中创建定时器。
4、添加集合点
4、配置同步定时器:
- 自定义集合点名称,名称可以自定义修改
- 添加相关的注释信息(也可忽略词条)
- 模拟用户组的数量:设置的数字,就是并发的线程数(并发用户数)
- 超时时间:默认状态为0,表示只有达到设定好的线程数,才会继续下一步
-
超时时间:当设定值!=0时,只要超过设定的等待时间,就继续执行下一步(请求超过等待时间后,不管线程数有没有到达设置的并发数量都开始进行测试)
5、示例
(1)场景一:线程数设置为6,集合点为3,超时为0,点击运行。
结果:可以看到有6个结果,此处分成了2组进行并发,每次是3个用户。
(2)场景二:线程数设置3,集合点设置为4,超时为0,点击运行
结果:发现只有4个请求,然后一直都没有停止,需要手动stop。原因:第一组够集合点,一起并发,第二组只有2个,不够集合点。
(3)场景三:线程数设置6,集合点设置为4,超时为0,点击运行。
结果:发现只有4个请求,然后一直都没有停止,需要手动stop。原因:第一组够集合点,一起并发,第二组只有2个,不够集合点。
(4)场景四:线程数设置6,集合点设置为6,超时为0,点击运行。
结果:可以看到有6个请求。分1组执行。
(5)场景五:线程数设置6,集合点设置为4,超时为5000,点击运行。
结果:分2组,发现先有4个请求,为第一组,5秒后,出现后2个请求,为第二组,共6个
结论:
超时时间(Timeout in milliseconds): 如果设置为0,Timer将会等待线程数达到了"Number of Simultaneous Users to Group"中设置的值才释放。也就是说,如果线程数不足集合点中设置的数,就会一直等待,需要手动stop。
如果大于0,那么如果超过Timeout in milliseconds中设置的最大等待时间(毫秒为单位)后还没达到"Number of Simultaneous Users to Group"中设置的值,Timer将不再等待,释放已到达的线程。也就是说如果线程数不满足集合点中设置的值,则在timeout中设置的时间后继续执行不足的那些线程。
Timeout in milliseconds默认为0。所以当timeout设置为0,但是线程数又不满足集合点中设置的值时,就会一直等待,不执行请求,需要手动stop。
这篇关于【Jmeter】- 集合点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!