• 【原创】性能测试、压力测试、负载测试、容量规格测试等测试的实际意义


    最近在负责招聘面试,基本每个来面试的小伙伴,都会写到熟悉这样那样的测试工具,比如LoadRunner、QTP、Jmeter等等。

    但当问起性能测试的相关概念时,却都答不出问题,在此闲暇时间,整理下自己的问题和解题思路。

    问题1:在性能测试指标中,响应时间、吞吐量、在线用户数有什么关系?

    答题思路:首先给出各个指标的概念,其次按性能拐点产生的时间讲,在线用户数不断增加时,吞吐量增加,响应时间也会有逐渐增加的趋势,但当响应时间急剧增加时,吞吐量却呈现出平行时间轴的直线或下降趋势;这个过程说明了系统开始出现性能降低的拐点,需要做记录和分析,此时系统的状态是什么,哪里报错了,这样思考就离找到系统性能瓶颈不远了。

    问题2:性能测试的目的是什么?

    答题思路:性能测试的概念,解释了性能测试的目的。但性能测试最终的目的不是出具测试报告,说系统性能一切正常,可以正常运行。而大部分时间做的性能测试,是为了对系统进行调优,才开展的性能测试。

    问题3:实施性能测试的流程是什么?

    答题思路:性能测试实施其实是一个标准的PDCA过程,计划-执行-评估-改进,先通过手动性能检查定出系统运行的性能基线,或使用单用户性能测试来确定系统正常运行的性能基线;再执行性能测试,获取10/50/100/200/500/1000/2000/5000/10000等各个在线用户数情况下系统的性能指标,以评判系统性能;最终通过定位性能瓶颈,进行系统调优,提升系统性能,再执行一次10/50/100/200/500/1000/2000/5000/10000等各个在线用户数情况下系统的性能测试,与未调优之前做对比,以得到性能提升的结论;否则继续进行测试和优化。

    问题4:客户会出于哪些目的让你开展性能测试?

    答题思路:一般客户会在系统上线前,提出生产环境下性能测试,以排除系统存在大并发访问时的性能问题;客户也会在系统已经发现运行性能问题时,找到性能测试人员,为其进行测试,找到性能瓶颈,并解决性能瓶颈,提升系统运行性能表现;客户也会在固定时间(半年/一年)间隔过后,要求测试人员进行性能测试,以评估系统数据库存储数据增加时,系统是否存在潜在的性能问题风险。

    问题5:性能测试工具还有其他用途吗?

    答题思路:性能测试工具是一种基于协议数据回放的思路,模拟真实用户操作系统的情形,对系统施压;在不同的场合,性能测试工具扮演了不同的角色。测试人员使用该工具是在做客户知情的压力测试,如果客户不知情的情况下,使用测试工具对某网站系统进行压力测试,那就与黑客发动Ddos攻击一样,变成破坏行为了;性能测试工具还可以用给做维护的人员,用于对系统的性能指标进行长期监测,得到系统业务访问的变化规律;

    【未完待续】

  • 相关阅读:
    The Future of Middleware and the BizTalk Roadmap
    FW: How to spawn a process that runs under the context of the impersonated user in Microsoft ASP.NET pages
    Strips illegal Xml characters
    luogu P2280 激光炸弹(二维前缀和)
    luogu P2704 炮兵阵地(经典状态压缩DP)
    SP1716 GSS3 Can you answer these queries III (线段树维护最大连续子段和)
    二分图判定、匹配问题
    C++语法综合 | 基于char*设计一个字符串类MyString
    luogu P1044 火车进出栈问题(Catalan数)
    C++设计模式 | 三种设计模式基础
  • 原文地址:https://www.cnblogs.com/xiaoTT/p/7932891.html
Copyright © 2020-2023  润新知