软件测试技能,JMeter压力测试教程,设置集合点(十七)

目录:导读

    • 一、前言
    • 二、同步定时器 Synchronizing Timer
    • 三、并发请求
    • 四、超时时间

一、前言

LoadRunner 中可以设置一个集合点,设置多个虚拟用户等待到一个时间点,到齐后一起发请求达到并发的目的

jmeter 中使用 同步定时器 Synchronizing Timer实现 LoadRunner 中集合点的功能,模拟多用户并发测试,即多个线程在同一时刻并发请求

二、同步定时器 Synchronizing Timer

在HTTP请求的样本下添加-定时器-同步定时器
软件测试技能,JMeter压力测试教程,设置集合点(十七)_第1张图片
有2个参数设置
模拟用户组的数量(Number of Simulated Users to Group by) 也就是并发数,集合多少请求后一起发出去

超时时间以毫秒为单位(Timeout in milliseconds) 指定人数多少秒没集合到算超时,默认为0,会一直等。设置500毫秒的话,如果500毫秒内没有凑齐并发数,就先发出去了

三、并发请求

先禁用同步定时器,线程组设置30,循环一次软件测试技能,JMeter压力测试教程,设置集合点(十七)_第2张图片
运行后用表格查看结果,会看到starttime没有重复的,说明没有并发的请求软件测试技能,JMeter压力测试教程,设置集合点(十七)_第3张图片
打开同步定时器,设置模拟用户组的数量为3,也就是3个并发,超时先设置为0软件测试技能,JMeter压力测试教程,设置集合点(十七)_第4张图片
再次运行,就可以看到在同一时间会发出3个请求(这里不是绝对的,会更接近3个并发)软件测试技能,JMeter压力测试教程,设置集合点(十七)_第5张图片
那么这里设置的并发数,会等线程数达到这个数量后一起发出去,起到并发的作用

四、超时时间

前面设置线程数30,并发3,刚好每凑齐3个请求一起发出去。如果线程数30,并发为7,最后还有2个请求凑不齐会怎样?
软件测试技能,JMeter压力测试教程,设置集合点(十七)_第6张图片
可以看到右上角有2个线程会一直等待,不会自动结束,因为前面超时时间为0,就一直等待软件测试技能,JMeter压力测试教程,设置集合点(十七)_第7张图片
为了避免这种一直等待的情况,可以设置同步定时器的超时时间,比如我设置500毫秒,如果500毫秒还没凑齐7个请求,那就先发出去,不用一直等了软件测试技能,JMeter压力测试教程,设置集合点(十七)_第8张图片
运行后,查看结果软件测试技能,JMeter压力测试教程,设置集合点(十七)_第9张图片


你可能感兴趣的:(测试,软件测试,压力测试,压力测试,jmeter,测试类型,软件测试,测试工程师)