• 性能测试基础知识


    一、性能测试基本流程:
     
    • 业务学习
    • 需求分析
    • 工作评估
    • 设计模型
    • 编写计划
    • 评审计划
    • 脚本开发
    • 环境准备
    • 准备数据
    • 测试执行
    • 缺陷管理
    • 性能分析
    • 性能调优
    • 测试报告
    • 结果评审
     
     
    二、性能测试成功与失败要素
    1. 性能测试有几大难点:
    • 需求分析
    • 场景设计
    • 性能诊断调优
    • 环境搭建和模拟
     
    1. 性能测试重要关注点
    • 评估系统,需要分析
    • 场景设计,用例设计
    • 测试执行,是否通过
    • 性能诊断优化
     
    3. 判断是否通过:
    • 响应时间
    • 吞吐量
    • 事务成功率
    • 硬件指标
    • 稳定性
    • 内存有无泄漏
    • 其它
     
     
    三、web性能指标有那些?
     
    1、页面加载时间
    从页面开始加载到页面onload事件触发的时间。一般来说onload触发代表着直接通过HTML引用的CSS,JS,图片资源已经完全加载完毕。
     
    2、全部页面加载时间
    全部页面载入时间指从最初启动浏览开始,直到所有元素都被加载完成后,在2秒后仍然没有网络活动的时间。
    0-2秒:用户体验最好,打分100
    2-8秒:用户可以容忍,从第2秒开始,每超过1秒减5分
    8-15秒:用户不能忍受,从第2秒开始,每超过1秒减5分
     
    3、首字节时间
    从开始加载到收到服务器返回数据的第一字节的时间
    达标时间=DNS解析时间+创建连接时间+SSL认证时间+100ms. 比达标时间每慢10ms减1分.
    0-1秒:用户体验最好
    1-2秒:用户可以容忍
    2-3秒:用户不能容忍
     
    4、使用长连接
    连接视图展现了页面加载过程中创建的(keepalive)连接,以及通过每个连接所加载的资源。
     
    5、DNS时间
    进行域名解析所需要的时间
    0-50毫秒 100分
    50-500毫秒 一般,可能会影响用户体验,从50毫秒开始,每增加10毫秒则减去2分
    500毫秒以上,严重影响?用户的网页体验,从50毫秒开始,每增加10毫秒则减去2分
     
    6、TCP时间
    客户端建立连接的时间
    0-100毫秒 100分
    100-500毫秒,一般,可能会影响用户体验,从100毫秒开始,没增加10毫秒,减去1分
    500毫秒以上,严重影响?用户的网页体验,从100毫秒开始,每增加10毫秒,减去1分
     
    7、HTTP网页打分
    页面渲染、下载速度、页面流畅度
     
    8、综合评分
    以上评分的加权
    计算值=全部页面载入时间评分*0.2+首字节时间评分*0.2+使用了长连接*0.1+DNS时间评分*0.2+TCP时间评分*0.2+HTTP网页评分*0.1
     
    9、其他一些测量指标
    请求时间
    定义:所谓的请求时间是指用户从三次握手到最后一次请求发出的这一段时
    间,这个时间可以用于定位网络问题。
    网络丢包率
    定义:当前的网络的丢包情况统计。
    网络时延
    定义:当前网络的时延。包括RTTc和RTTs。
    RTTc
    用户到探针的传输时延
    RTTs
    探针到服务器的传输时延
    可以关联的其他指标
    受影响的用户数
    所谓受影响,即当该业务的某个指标比较差时,有多少个用户受到影响。通过
    这个指标,可以进而得到具体受到影响的用户是哪些。
    受影响的站点数
    即当网络出现问题,或者是服务器出现问题时,有多少个站点受到影响。通过
    这个指标,可以进而得到具体受到影响的站点是哪些。
     
    还有什么指标呢?
    简单的说一个Web请求的处理包括以下步骤:
     
    (1)客户发送请求
    (2)web server 接受到请求,进行处理;
    (3)web server 向DB获取数据;
    (4)web server生成用户的object(页面),返回给用户。给客户发送请求开始到最后一个字节的时间称为响应时间(第三步不包括在每次请求处理中)。
     
    1.事务Transaction
     
    2.请求响应时间
     
    3.事务响应时间
     
    事务可能由一系列请求组成,事务的响应时间主要是针对用户而言,属于宏观上的概念,是为了向用户说明业务响应时间而提出的.
    例如:跨行取款事务的响应时间就是由一系列的请求组成的.事务响应时间是直接衡量系统性能的参数.
     
    4.并发用户数
     
    5.吞吐量
    指的是在一次性能测试过程中网络上传输的数据量的总和.吞吐量/传输时间,就是吞吐率.
     
    6.tps
     
    7.点击数PV
     
    每秒钟用户向WEB服务器提 交的HTTP请求数.这个指标是WEB应用特有的一个指标:WEB 应用是"请求-响应"模式,用户发出一次申请,服务器就要处理一次,所以点击是WEB
    应用能够处理的交易的最小单位.如果把每次点击定义为一个交易,点击率和TPS就是一个概念.容易看出,点击率越大,对服务器的压力越大.点击率只是一个性能参考指标,重要的是分析点击时产生的影响。需要注意的是,这里的点击并非指鼠标的一次单击操作,因为在一次单击操作中,客户端可能向服务器发出多个HTTP请求.
     
    8.资源利用率
    性能项       命令       指标
    CPU限制      vmstat    当%user+%sys超过80%时
    磁盘I/O限制   Vmstat   当%iowait超过40%(AIX4.3.3或更高版本)时
    应用磁盘限制    Iostat     当%tm_act超过70%时
    虚存空间少       Lsps,-a    当分页空间的活动率超过70%时
    换页限制 Iostat, stat 虚存逻辑卷%tm_act超过I/O(iostat)的30%,激活的虚存率超过CPU数量(vmstat)的10倍时
    系统失效 Vmstat, sar 页交换增大、CPU等待并运行队列
     
    性能项   资源   评价
    CPU占用率 70%   好
         85%       坏
         90%+ 很差
    磁盘    I/0 <30% 好
         <40% 坏
         <50%+ 很差
    网络       <30%带宽 好
    运行队列 <2*CPU数量 好
    内存      没有页交换 好
    每个CPU每秒
           10个页交换 坏
              更多的页交换 很差
     
     
     
  • 相关阅读:
    3. Node.js REPL(交互式解释器)
    2. npm 的使用
    hdu 6155 - Subsequence Count
    蒟蒻ACMer回忆录 · 一段弱校ACM的奋斗史
    Codeforces731F Video Cards
    Codeforces731E Funny Game
    Codeforces731D 80-th Level Archeology
    Codeforces732F Tourist Reform
    Codeforces732E Sockets
    Codeforces732D Exams
  • 原文地址:https://www.cnblogs.com/yu2000/p/6873929.html
Copyright © 2020-2023  润新知