首页 > 其他分享 >性能测试之集合点

性能测试之集合点

时间:2023-11-13 23:33:05浏览次数:30  
标签:定时器 性能 接口 并发 线程 测试 集合点 取样器 用户组

  了解性能测试的同学相信对并发这个词应该不会陌生,但该如何来测量被测系统最大能支撑多少并发,可能很多同学都感觉无从下手。编写压测脚本时,我们可以通过设置jmeter中的线程数来模拟用户访问系统接口,但此时接口的访问是有先后顺序的,如果被测系统的性能足够强大,也许上一个接口已经结束,下一个接口还没开始,所以并不能做到真正的并发。针对此种场景,我们需要借助一个控制元件来尽可能的模拟接口的并发并发请求——同步定时器,也叫集合点。

  为什么说是尽可能的模拟真实场景下的接口请求呢,主要原因是同步定时器虽然可以拦截接口请求直到满足条件后才予以并发执行,但并不能保证所有的接口都是在同一时间到达被测系统。

   同步定时器有两个参数可以设置,分别是模拟用户组的数量(Number of Simulated Users to Group by)和超时时间(timeout in milliseconds)。

  模拟用户组的数量代表你本次设置需要当用户达到多少数量时,予以并发执行。例如:当我设置用户组数量为30,在启动jmeter后,当虚拟用户数未满30时,所有的接口请求都会在后台集合等待,只有当数量满足30时,才会予以并发执行。若此参数设置为0,则默认等于线程组中设置的线程数。

  超时时间(毫秒)参数则代表当达到设定的时间后,若接口请求数量还未满足设置要求,则不再继续等待,予以并发执行。若此参数设置为0,则代表jmeter需要无条件等待设置用户组数量满足条件才予以并发执行。

设置合理性

1.线程组中的线程数和模拟用户组数量之间的关系,例如线程组中的线程数量设置为20个,但模拟用户组数量设置为30,且超时时间设置为0,则由于无法满足要求,jmeter将永远无法发送请求。

2.超时时间需要大于等于jmeter加载设置用户数的耗时,例如线程组中设置了10秒加载完200个线程,模拟用户组数量为100,系统每秒将加载20个接口请求,意味着至少需要花费5000毫秒才能达到模拟用户组数量,所以超时时间需要大于等于加载耗时。

关注点

1.同步定时器的摆放位置。jmeter中定时器的执行顺序是在取样器之前,也就是说不管同步定时器是放在取样器之前还是取样器之后,jmeter都会先执行同步定时器。且若线程组中存在多个接口请求的取样器,则同步定时器同时作用于这些取样器。若想只针对于某个取样器生效,可以将同步定时器移至取样器节点之下。

2.同步定时器仅对同一JVM下的线程生效,因此并不适用于分布式测试。

标签:定时器,性能,接口,并发,线程,测试,集合点,取样器,用户组
From: https://www.cnblogs.com/sherlock1059/p/17830601.html

相关文章

  • 11.13 分级测试
    今天满课,晚上看了一下今天的分级测试,只拿到了c总结就是自己只会一些基础的操作,还是不够熟练,对整个项目没有明确思路,导致浪费很长时间去改代码每个界面之间的联系,需要添加的东西多了,自己出现了问题。数据库操作,需要好几张表就有点乱了下面一周还是要多加练习,找找自己的不足,应对......
  • 11.13下午的分级测试
    我现在也没实现选课,明天再看看吧其他的都差不多了 这里的前端代码是我着重功克的主要是因为忘记开mybatis自动映射驼峰命名后端就对不上,前端也有点小问题  ......
  • web分级测试
    难评,整体感觉就是,感觉能写,但是总磨磨蹭蹭的欠练?不知道,哦对,我鼠标还忘记带了,阿西吧这东西,不像目前学的算法,练一道题好费时间啊,还库库出错一小时的代码,俩小时的bug,基础差点,ChatGPT也不是很用的明白,都不能帮我改bug至于分级到c级,确实差事,主要周六日回家过了个生日,没带电脑emmmmm......
  • 11.13测试总结
    测试中出现了一些没有见过的错误,又调试了半天,在引入mysql数据库时的一些细节问题得到了解决,对整体结构的构造更加清晰,并且学习到了一些新知识,可以在同一界面中放置不同角色的因素,然后不同的角色对应不同的元素展示,进而减少工作量,同时在此次测试中也暴露了一些问题,对项目的整体结......
  • 测试总结
      今天的测试成绩是C,整体系统完成了大部分,四张表都已经建好了,相关的增删改查也已经完成,只存在一些细节上的调整,其中课程管理表的功能并不可以实现的很好,相关的功能因为时间问题以及不太熟练的原因导致没有完成。老师在课堂上提到的关于系统的更改方法,减少代码量,提升效率的办法......
  • 11.13周一分级测试反思
    这次分级考试没有做好,一共A,B,C,D四个等级,只做到了c等级,B等级的选课的业务逻辑没有想出来,感觉还是经验不太足,现在反思一下造成这种情况的原因。先说上一周做了什么吧,上周就是发了期末试题后,回来尝试看了看,但是第一步就出错了,springboot工程崩了,在一直在找问题,大概陆陆续续找了一天,终......
  • 分级测试
       今天在基教513进行了分级测试,我的成绩是C级。我实现了管理员的所有功能,以及老师和学生的增改功能,但是选课没有完成。我使用的是jsp纯前端的代码尝试完成的,相比于其他同学,首先认为我的代码安全性很低,而且写起来非常的繁琐,需要新建许多的jsp文件才能实现一个功能,浪费了很多......
  • 分级测试
    这次测试主要是完成一个简单的选课系统,涉及到四个表的增删改查,主要是学生的信息表,老师的信息表,课程信息表,还有一个选课信息表。在刚开始拿到这道题的时候,我并没有看到最后一个表,所以我一开始就是使用前三个表在做这个系统。虽然基本功能都能实现,但是在最后选课的流程上,我并不能使......
  • java里junit 单元测试、注释(入门)
    什么是Junit单元测试?JUnit单元测试是指使用JUnit框架编写的针对代码中小的、独立的模块(通常是方法或者类)的测试。在JUnit中,您可以使用断言来验证代码的行为是否符合预期,以及使用注解来标记测试方法、测试套件等。执行单元测试可以帮助验证代码是否满足特定的业务需求和技术......
  • wifi吞吐量测试和分析方法
    https://blog.csdn.net/tankai19880619/article/details/91966964iperf-cipaddress_server-t60-i1-w2Miperf-s  -i1-w2M-wwindow 对于TCP方式,此设置为TCP窗口大小。对于UDP方式,此设置为接受UDP数据包的缓冲区大小,限制可以接受数据包的最大值-u udp -bUDP......