码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 性能测试-基础理论知识


    性能测试-基础理论知识

      • 1、性能测试概述
        • 1.1 性能的概念
          • 1.1.1什么是性能?
          • 1.1.2什么是性能测试的目的?
        • 1.2 性能测试和功能测试
          • 1.2.1 功能测试和性能测试由什么不同?
          • 1.2.2 功能测试和性能测试有什么关系?
      • 2、性能测试分类
        • 2.1基准测试
          • 2.1.1 什么是基准测试?
          • 2.1.2 基准测试数据的用途?
        • 2.2 负载测试
          • 2.2.1 概念
          • 2.2.2 作用
        • 2.3 稳定性测试
          • 2.3.1 概念
          • 2.3.2 作用
        • 2.4 压力测试
          • 2.4.1 概念
            • 2.4.2 测试场景
        • 2.5 并发测试
          • 2.5.1 概念
          • 2.5.2 应用场景
          • 2.5.3 与负载测试对比
        • 2.6 性能测试指标
        • 2.6.1 响应时间
        • 2.6.2 并发用户数
        • 2.6.3 吞吐量
        • 2.6.4 资源利用率
      • 3、 性能测试的流程

    1、性能测试概述

    1.1 性能的概念

    1.1.1什么是性能?

    时间:系统处理用户请求的响应时间
    资源:系统运行过程中,系统资源的消耗情况

    1.1.2什么是性能测试的目的?
    • 评估当前系统能力
    • 寻找性能瓶颈、优化性能
    • 评估软件是否能够满足未来的需求

    1.2 性能测试和功能测试

    1.2.1 功能测试和性能测试由什么不同?

    功能测试:验证系统的功能需求规格。 焦点:功能(正向、逆向)
    性能测试:验证系统的业务需求场景。 焦点:时间、资源

    1.2.2 功能测试和性能测试有什么关系?

    一般项目中,先功能测试通过后,在进行性能测试

    2、性能测试分类

    2.1基准测试

    2.1.1 什么是基准测试?

    狭义上讲:就是单用户测试(单用户循环多次得到的数据)
    广义上讲:建立基准线,当系统的软硬件环境发生变化之后再进行一次基准测试以确定变化对性能的影响

    2.1.2 基准测试数据的用途?
    • 基础测试不会单独存在
    • 多为用户并发测试和综合场景测试等提供参考依据
    • 为系统\环境配置、系统优化前后的性能提升\下降提供参考指标

    2.2 负载测试

    2.2.1 概念

    通过逐步增加系统负载,确定在满足系统的性能指标(如响应时间等)情况下,找出系统所能承受的最大负载量的测试

    2.2.2 作用

    系统最大负载量达到用户要求时,系统才能正式上线使用。

    注意:

    • 通过负载测试,可以确定系统的最大负载量和极限负载量
    • 系统对外宣称的最大负载量
    • 负载测试的时间一般为1-2小时

    2.3 稳定性测试

    2.3.1 概念

    在服务器稳定运行(用户正常的业务负载下)的情况下进行长时间测试(1天-1周等),并最终保证服务器能满足线上业务需求

    2.3.2 作用

    系统在用户要求的业务负载下运行达到规定时间时,系统才能正式上线使用

    2.4 压力测试

    2.4.1 概念

    在强负载下的测试,查看系统在峰值情况下是否功能隐患、系统是否具有良好的容错能力和恢复能力

    2.4.2 测试场景
    • 极限负载情况下的破坏性压力测试
    • 高负载下的长时间稳定性压力测试

    2.5 并发测试

    2.5.1 概念

    并发测试:是值在极短的时间内,发送多个请求,来验证服务器对并发的处理能力

    2.5.2 应用场景

    特定活动场景:如抢红包、秒杀

    在这里插入图片描述

    2.5.3 与负载测试对比

    负载测试:主要目的是测试高负载情况下,对系统资源的消耗,是否会耗尽的问题(双11活动)
    并发测试:主要目的是测试极短时间内,并发请求时,系统资源争抢的问题(抢红包、秒杀)

    2.6 性能测试指标

    2.6.1 响应时间

    • 指从客户端发起请求开始,到客户端收到结果的总时间
    • 包括:服务器处理时间+网络传输时间
      在这里插入图片描述

    2.6.2 并发用户数

    某一时刻同时向服务器发送请求的用户数
    在这里插入图片描述

    2.6.3 吞吐量

    吞吐量:指的是单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2.6.4 资源利用率

    在这里插入图片描述

    3、 性能测试的流程

    在这里插入图片描述

  • 相关阅读:
    Geotools实现shape文件的写入
    Java - List 去重,获取唯一值,分组列出所属对应集合
    pg_dump执行流程简单记录
    Colocate Join :ClickHouse的一种高性能分布式join查询模型
    java基于微信小程序的英语四六级学习考试系统 uniapp 小程序
    【剑指offer系列】36. 二叉搜索树与双向链表
    终端准入控制系统,保障企业内网安全的关键防线
    MCE | 淀粉样蛋白沉积或是阿尔茨海默症发展“驱动者”
    网络安全—黑客技术—自学笔记
    【数据结构】顺序表—纯C实现顺序表
  • 原文地址:https://blog.csdn.net/weixin_44244493/article/details/127829545
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号