Jmeter之集合点(同步定时器)
线程组中线程数量
添加同步定时器: 线程组--添加----定时器---Synchronizing Timer
中文名称是我自己添加的奥~~~
定时器是干什么的呢?
集合点(同步定时器).的目的:让各个线程(用户)步调一致,对系统进行加压。
注意:定时器对那个请求进行集合点设置,就放在那个请求的下面,定时器会默认先进行集合,再一并发请求!
针对上面两个参数值设置做如下说明:
集合点参数设置的注意事项:模拟用户组的数量,不大于线程组包含的用户数
①比如,线程组中的用户数是5个人,这里的参数设置是6,超时时间设置为0,运行时会一致等待集合到6个用户才会并发。
② Timeout in mollinsenconds-----所有用户的集合超时;
如果设置参数是2,线程中的用户数是5,那就每集合2个用户并发一次,再集合2个,又并发一次。。。。。最后只剩一个,超时时间不设置的话,就会一直等。
设置超时时间,到了时间还没等到,就释放集合的线程,直接发送测试请求。
超时时间从什么时候开始计算?----线程组的5个用户,每集合2个用户为一组,第三组只有一个用户,从第二组结束开始计算,超时时间没有等到第三组的2个用户,
就释放,直接发送测试请求。
③注意事项
如果设置 Timeout in mollinsenconds: 0 且线程数量无法达到“Number of simulated Users to Group by”中设置的值,那么test将无限等待,直到手动停止。
这个无法达到的情况有两种:
a,设置的值大于线程数量这样就无法达到了;
b,最后一批线程数不够集合点数目;
来个图总结下:
来个栗子:
1.如设置线程组为6,
a. 定时器设置 5 和 0
运行后,查看结果数会有5个请求,但是线程组却一直不停止,只能手动停止(剩余的1个无法组队了把)
b.
设置线程组中线程数 5个,定时器中为3个集合
这种启动后,不会自动停止,需要手动停止;
再比如,设置线程组中线程数3个, 定时器中为6个集合
启动线程组,运行后查看结果树,无结果,一段时间后,仍是需要手动停止,仅有3个请求接口;
还再比如:(可以正常组队后并发成功的例子),线程组中线程数为 3
设置的启动数量和线程组中线程数量一致时,启动线程组,会很快运行完毕,结果树中有3 个请求。