• 把握性能测试重点,5步解决问题!


    一、引言

    很多做性能测试的同学都问过我这样一个问题:鱼哥(Carl_奕然),你说性能测试的重点是什么?

    我的回答很简单:瓶颈分析与问题定位。

    在性能项目的整个周期,不管是脚本设计,脚本编写还是脚本执行,都还算简单。

    难点在于如何定位瓶颈,分析瓶颈,解决瓶颈。

    如果你不会性能分析,脚本设计的再好,脚本编写的再完美,分析不出问题所在,那都是白白浪费时间。

    所以,这一讲,我们来学习:如何进行性能分析,学会了性能分析的思路,才能定位问题,分析问题,从而解决问题。

    在性能项目中,我总结的性能分析思路,分5个模块,即性能分析5部曲,如下:

    1、判断性能瓶颈;

    2、线程递增策略;

    3、性能衰减过程;

    4、拆分响应时间;

    5、构建分析决策tree;

    接下来,我就对这5部曲进行一一解释。

    二、判断性能瓶颈

    在整个性能测试阶段,让性能测试工程师最艰难的,就是如何定位性能瓶颈。

    如果无法定位到性能瓶颈,那么对开发同学的支持也就有了限制,这无疑即增加了解决问题的时间,又增加了开发工程师的工作量。

    这时候,你会说,开发工程师的职责不就是解决性能瓶颈吗,

    那要是这样说, 测试工程师的职责,可不仅仅是发现性能瓶颈,还需要定位性能瓶颈,换句话说,也就是协助开发工程师快速定位并解决性能问题。

    为什么说在整个性能项目中,最难得就是分析性能瓶颈。

    这里,我先上一张图,为了更形象的表现接下来要描述的内容,我把图片做了一点处理:

    通过这张图,我们很直观的知道:这是一个阶梯式增加的压测场景。

    但是,根据这个图,你能判断出拐点在哪里吗?

    如果无法判断哪里是拐点,那我再上一张ResponseTime(后面简称为RT)图:

    同样,为了让你更直观的查看RT图,, 我同样也对RT图做了优化处理。

    结合RT图与TSP图,我们能不能判断拐点在哪里呢?

    如果你觉得在3.3s的位置是拐点。我不能否认你说的完全错误,但是,我也不会认同你的观点, 为什么呢?

    因为,根据多年的经验,判断的标准是:随着TPS的不断增加,找到那个清晰可见的弧度。

    这一点很重要,需要你记住。

    我举个例子:如果按照你刚刚的说法,只根据一个拐点来进行判断,想象一下,

    假如网络出现突然的抖动,按照你刚刚的判断依据(只根据一个拐点),是不是就不准确了。。

    所以,一定是找到那个 清晰可见的 弧度。

    我们在回来说上面的TPS图与RT图,根据这两个图,你能得出哪些结论呢?

    是不是可以得出这个系统有瓶颈,系统的瓶颈与压力有关系,并且随着压力的增加,涨幅在逐渐减少。

    到这里, 需要请你在思考一个问题:瓶颈点是否跟压力的大小有关?

    答案:肯定不是跟压力大小有关。

    既然不是跟压力大小有关,那么,根据什么有关呢?

    其实结合上面的图, 我们可以知道:

    ①引起系统瓶颈的问题是有规律的;

    ②TPS是周期性的降低,并且最大的TPS也都差不多是一致的;

    所以,即使压力降低,最多只是降低最大的TPS水位,这种情况只是让问题出现的更晚一点,但不会不出现的。

    ……

    由于作者版权要求,仅展示文章的一部分,如需阅读完整版文章,可以找小编。

    最后:

    可以到我的个人号:atstudy-js,可以免费领取一份10G软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!其中包括了有基础知识、Linux必备、Mysql数据库、抓包工具、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试等。

    这些测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

  • 相关阅读:
    C语言-整数和浮点数在内存中的存储-详解-上
    深度学习记录
    Apipost连接数据库详解
    Java之组合模式
    软件定义存储不能打?这家成立刚三年的公司问鼎全球存储性能榜
    图表制作办公首选--实用图表工具Echars
    微服务SpringBoot 整合Redis 实现点赞、点赞排行榜
    Mybatis(动态sql和分页)
    问题解决:TNS-12543: TNS:destination host unreachable
    nuxt 路由 & 动态路由配置
  • 原文地址:https://blog.csdn.net/deerxiaoluaa/article/details/128041528