性能测试 | 性能测试基础



一、性能测试

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

参阅:

  • LoadRunner之安装、破解、汉化教程(一)

你可能感兴趣的:(性能测试 | 性能测试基础)