美文网首页
性能测试 | 性能测试基础

性能测试 | 性能测试基础

作者: Ricsy | 来源:发表于2020-05-15 14:28 被阅读0次


    一、性能测试

    1.1 性能测试基础

    1.1.1 性能测试本质

    基于协议模拟用户发出请求(业务的模拟),对服务器形成一定的负载,来测试服务器的性能指标是否满足要求

    • 关注时间性能(响应时间)、空间性能(CPU、内存、磁盘等)
    • 与界面无关
      界面是浏览器解析形成的

    注意:

    • 性能测试基于协议,而自动化基于用户行为

    1.1.2 性能测试分类

    ➢ 性能测试(狭义)
      对系统性能已经有了了解的前提,并对需求有明确的目标,并在已经确定的环境下进行的

    ➢ 负载测试
      对一个系统持续不断的加压,看你什么时候已经超出“我的要求”或系统崩溃

    ➢ 压力测试(强度测试)
      让系统处在很大强度的压力之下,看系统是否稳定,哪里会出问题

    ➢ 容量测试

    ➢ 配置测试
      关注点是“微调”,通过不断对软硬件的调整,找出他们的最佳状态,使系统达到一个最强的状态

    ➢ 并发测试
      多个用户同时(并发)对一个模块或操作进行加压

    ➢ 可靠性测试
      一般3x24h
      关注点是“稳定”,不需要给系统太大的压力,只要系统能够长期处于一个稳定的状态

    1.1.3 理发店模型与性能指标

    平台 下载地址
    文档 https://www.lanzous.com/i63vtaj

    扩展服务器(硬件层面)
    优化服务
    优化程序(代码)

    1. 用户数

    并发用户数:在同一时间向服务器发送请求的用户数量

    提示:

    • 并发请求数不是并发用户数,注意需求,一般看并发请求数

    2. 响应时间

    • 公式



      ==>网络传输时间+服务器处理时间

    • 发出请求->服务器处理请求->返回响应数据的时间
      不包括到前端页面渲染的时间,到浏览器收到请求后响应数据截至
    • 原则
      2-5-8(2s、5s、8s)
      优秀、良好、较差
      tuitu

    3. tps、hps、吞吐量

    名称 说明
    tps 单位时间事务数(transaction per second)
    hps 单位时间请求数(hits per second)
    吞吐量 描述服务器的处理能力

    4. 资源利用率

    在一定负载情况下,服务器资源占用情况
    资源利用率太小,也会造成资源浪费问题

    名称 说明
    CPU利用率 不允许超过70%-80%

    队列长度
    Mem利用率 80%以下

    虚拟内存(页交换频率)
    带宽利用率 100Mbps=12.5MB/s

    1Byte=8bit

    1字节=8比特

    1.2 性能测试流程

    1.2.1 需求分析

    1. 测试对象

    • 常用的
    • 核心的、重要的
    • 数据量、并发量

    eg:

    登录、注册、购物车、下订单

    2. 确定性能指标

    • 吞吐量、tps
    • 响应时间
    • 用户数
    • 资源利用率

    eg:

    1. [(200000000/300)*0.8/(24*0.2)]/3600=30个/秒左右
      平均:200000000/300/24/3600=7个/秒左右

    2. 平均负载:5000000/8/3600=174左右
      2-8原则:[5000000*0.8/(8*0.2)]/3600=694左右

    2-8原则的结果是平均负载的4倍(0.8/0.2=4)

    提示:

    • 2-8原则
      80%的用户请求集中在20%的热点数据上或时间段

    3. 测试场景

    • 单一场景

    eg:

    登录、注册等

    • 混合场景
      用户使用场景
      系统使用场景

    1.2.2 测试计划

    • 测试目标
    • 测试人员组织
    • 压测进度安排
    • 压力机(负载机、测试机)
      配置、要求、数量

    只有测试工具软件,没有其他软件在里面

    • 风险

    1.2.3 测试方案

    1. 测试工具

    LoadRunner、Jmeter

    2. 测试环境

    • 数据库
    • 服务器
    • 架构设计

    有条件的情况下尽量和生产环境一致

    2. 测试策略

    • 单一场景
    • 混合场景

    2. 监控工具

    • Linux
      nmon、rpc、jvisual Vm、Spotlight
    • Windows
      Spotlight、perfmon.exe(自带)

    1.2.4 用例设计

    • 测试脚本:基于脚本的用例

    eg:

    • 场景设计:基于场景的用例

    eg:

    1.2.5 测试执行

    1. 脚本编写

    2. 场景监控设计

    3. 运行场景

    4. 监控场景

    5. 测试报告

    1.2.6 定位分析问题

    1. 后端

    服务器端

    • 代码
    • 软件(数据库、应用服务器)
    • 硬件

    2. 前端

    3. 网络

    1.3 工具介绍——LoadRunner

    1.3.1 说明

    • LoadRunner需要管理员权限,而家庭版windows无管理员权限,所以操作系统必须是专业版、旗舰版等有管理员权限的Windows,家庭版的不可以使用
    • LoadRunner是商业版软件,高版本完全破解很困难,所以学习使用的话选择11破解版本就可以了
    • LoadRunner只能安装在Windows中,但只有其中的Load Generator(压力机——只能运行脚本)可以装在Linux下
    • LoadRunner安装时需要关闭杀毒软件和防火墙
    平台 说明
    https://pan.baidu.com/s/1iW5ghOOilEMnJ_jrftSwCQlgsc
    许可证 支持65000个并发用户数

    AEACFSJI-YJKJKJJKEJIJD-BCLBR

    参阅:

    相关文章

      网友评论

          本文标题:性能测试 | 性能测试基础

          本文链接:https://www.haomeiwen.com/subject/uykbyctx.html