• 0
  • 0
分享
  • 关于Jmeter 进行多并发测试,有三点忠告——软件测试圈
  • 落叶凌飒 2023-01-03 09:44:38 字数 936 阅读 2458 收藏 0

  1. 首先明确下并发的概念。在性能测试中并发可以理解为同一时刻做不同的事,或同一时刻做同样的事。一般我们在性能测试的时候也是这么去模拟的。那这个同一时刻的并发是很难做到的。

  要知道我们用来发起压力的测试工具本身要能做到同一时刻发起压力,如果设置线程数过多,负载机本身资源不足会有排队,请求建立和服务端的连接过程会排队,请求数据发送到服务的时候在网络队列上也会排队,请求数据达到服务端,在服务端也会进行排队,所以严格意义上的并发多少用户数等等是比较难做到的。

  但是,并发我们可以分层去看,像一般的webserver或容器服务都有监控数据,如nginx的Active connections,tomcat的currentThreadsBusy,这些参数表明服务本身目前正在处理的最大并发线程数。到了代码层每个方法的实际并发数又是另一回事。根据请求的到达情况来看,每一层的并发数都会有不同。使用一台机器发起600个线程,和使用2台机器各发起300线程,从服务端的请求达到情况来看,确实会存在不一样的情况。

  2. 性能测试中不只关注并发数。尤其是单接口性能测试的时候,更多关注吞吐量、响应时间等指标来评估服务端性能。验证服务端最高每秒能正确处理的请求数,以及请求的响应延时情况。曾经看过并实施过RBI性能测试方法,快速瓶颈识别法。

  RBI强调了80%的性能问题可以通过吞吐量测试来发现,其他20%的性能问题可以通过引入并发用户数等更复杂的场景来发现。推荐有空可以看看。

  3. 对压测中出现的异常或错误,可以尝试自己分析下。Response code: 500通常情况下是服务端出现问题,可以查看服务端的日志,看看是否有异常或错误信息,根据提示信息来定位分析,排查的时候可以根据服务端的业务架构一层层的排查下去,直至找到发生问题的服务。对自己没见过的或不太熟悉的错误信息建议google。 比如:Non HTTP response code: java.net.SocketException这种错误,google一把大致就有些可行的解决方案。


作者:Linsa    

来源:http://www.51testing.com/html/09/n-4478109.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   1、前言  大家好!我是Meng  前段时间,很荣幸被一合作伙伴邀请发表一篇文章,主题为"这些年,我所从事软件测试的一些感悟",正好趁着这个机会,我也好好总结一下。  2、测试培训  对于软件测试,在培训之前也不知道是干什么的,只知道有软件开发,之后才知道有软件测试这个行业。  刚开始也是在徘徊是做开发还是做测试,经过多次被测试机构的招生老师洗脑后,开始进行了软件测试培训之旅。那时候测试培训机构就那么几家,基本都是机构,个人的很少,培训机构是线下的,线上的也很少。培训价格方面也是过万了,跟现在的培训机构差不多,也就便宜了几千而已。  回头一想想,那时候教的内容,真的很少...
            0 0 1337
            分享
          • 国内的大多数互联网公司只注重软件功能,却往往忽略了极为重要的软件质量,在一个月以前,我认为遵循了代码规范(阿里规约、sonar)的软件系统已经算是一个质量比较好的软件系统了,但是在我了解单元测试以后,才发现自己以前的想法有多么愚蠢,单元测试的作用远比我想象的要重要许多。经过一段时间的研究,总算对单元测试有了一个大概的了解,然而网上的文章零零散散,大多是讲解一些比较简单的demo,参考价值比较有限,因此我决定写一篇关于单元测试的文章来总结自己这段时间的收获与心得。背景软件系统刚开发完成时几乎不会出现Bug。为什么呢?因为刚开发第一版软件系统时,需求并不复杂,场景也不是很多,因此实现起来比较简单,...
            0 0 2120
            分享
          • 1.页面跳转和刷新driver.get(url)方法可以跳转到要访问的网页去driver.back()可以返回上一个页面,即跳转回到百度首页了driver.forward()可以跳转回到刚才回退的那个页面即当driver.back()的时候回到上一个页面然后想回到下一个页面可通过driver.forward()跳转到下一个页面去可通过driver.refresh()来刷新页面2.driver提供获取页面信息方法driver.current_url可获得页面的当前url地址,可用于判断当前页面driver.title可获得当前页面的标题,可用于判断当前页driver.name可用于获取当前浏览器...
            0 0 11970
            分享
          •    一、 研究背景  随着我行自动化测试建设的深入推进,带动了我行功能测试效率的整体提升,但在建设过程中,各系统在自身业务特点及功能实现方式的不同,在自动化建设和应用过程中也发现了一些适用的难点和问题,制约了自动化测试建设向更广、更深的层次发展,阻碍了自动化测试效率进一步提升。  具体问题主要有:  1、业务对会计日期敏感问题,在产品存在生命周期限制的情况下,产品会对会计日期产生较大依赖,会计日期频繁变化会对产品有效性造成影响;  2、测试数据准备逻辑复杂,作为直接面客的业务产品层面,会受合约、账户、产品和运营环境等关联条线限制,在开展数据遴选和制造时,需要逐层查找、处理...
            0 1 1371
            分享
          • 新人和实习生应该怎么安排?他们胜在年轻,有自己的想法,是未来的希望。新人来的前一周,基本是在公司的培训中度过等到了部门之后,就开始负责人领上路了,这里有一个大致思路:【第一阶段】:开通各种账号,提供测试环境账号,介绍业务结构,开始熟悉业务模块和测试流程(一周),讲明日报,周报要求     开通bug系统的账号,提供测试环境地址和账号,提供原型文档     介绍公司背景,产品组成,版本测试模式,提bug方法,(实习生还需要学习如何判定bug)。     比如我们公司是做什么的,软件测试岗位的职责是发现问题,...
            5 5 8305
            分享
      • 51testing软件测试圈微信