zoukankan      html  css  js  c++  java
  • app的延迟和丢包测试(六)

    一,弱网测试的背景

      1,用户体验

        APP使用过程中,弱网的高延迟和高丢包,在实时性要求非常高,容易伤害用户体验

      2,非正常情况下,出现bug概率会增加

        在解决日常的支持需求中,经常会遇到一些用户反馈一些无法简单复现的bug,有很大一部分的bug是由于用户自身的网络环境波动,或者是本身网络环境就较为差,而服务在面试这种比较差的网络环境的健壮性不够,会导致出现一些意想不到的bug

      3,弱网测试关注的指标

        丢包:应该是最常见的问题,在TCP协议中,需要不停的发送请求,来确认连接状态,一旦发生丢包,就需要重新传。这个时候就需要去检查产品的处理机制,给予什么提示,如果未响应怎么处理这些

        延时:延时也是很常见的问题,由于网络太差,产生了网络波动,导致数据包在传输的时候出现抖动,可能导致请求出现超时的现象,这个时候就需要给予相应的提示,或者是其他的处理方式

      4,工具

        fiddler----模拟网络延时场景

        Network Emulator Tookit  ----模拟网络丢包场景

      5,fiddler-模拟网络延时

        使用手机连接上fiddler后,需要在fiddler中打开如下图1:

        

        接着会出现图2的一个配置文件。我们可以搜索 m_SimulateModem

        

         这里300表示每300ms上传1kb

        这里150表示每150ms下载1kb

        如果我要延时的话,需要把这数字变大,如我改成

        

      此时还需要进行如下图的设置才可以生效,表示启用网络设置

       

       当我们在操作手机的时候,会发现网络很慢,一直加载中,但是会慢慢的出现数据,延迟造成

      

      6,丢包--Network Emulator Tookit 

        下载地址:链接:https://pan.baidu.com/s/1x7f3X7hhWBDayS74cdZ0OA 提取码:8gw5 

        安装步骤---一路下一步即可安装成功。安装成功打开如下图:可以在win上输入Network Emulator打开

        

        操作步骤:

          1,在菜单栏Configuration-->new Filter 新增一个过滤器--->点击add---关闭

            

             新增完成后当前页面会出现如图:

            

           

          2,点击configuration-->new link 新增一条链路

            

             此时上下剪头的颜色是灰色的,没有生效,我们要让他生效,选中灰色箭头,鼠标右键出现如图:

            

          3,新建链路选择Upstream设置上行网络和下行网络

            选中set Upstream出现如图:

              

          说明一下这个面板的菜单栏:       

          Loss为设置丢包,

          Error为设置错包,

          Latency为设置网络延迟,

          BW&Queue为设置带宽,

          BG Traffic为设置边界网关流量,

          Disconnection为设置断开连接数,

           固定丢包:

          

         我们再看set downstream---下行也就是下载

        

         

          4,设置完成后点击Action-->start

          点击这个可以生效,会显示电脑本地的网速

          5,通过ping命令我们可以看到真实的丢包数据,如图:  

          

          6,我们在设置下延时--还在在下行/上行处设置。如图延迟80ms~150ms

          

        

          7,在真实生产环境中的操作,可进行网络设置参考:

            

       

        

        

       

        

      

  • 相关阅读:
    DDD 领域驱动设计-谈谈 Repository、IUnitOfWork 和 IDbContext 的实践
    UVA10071 Back to High School Physics
    UVA10071 Back to High School Physics
    UVA10055 Hashmat the Brave Warrior
    UVA10055 Hashmat the Brave Warrior
    UVA458 The Decoder
    UVA458 The Decoder
    HDU2054 A == B ?
    HDU2054 A == B ?
    POJ3414 Pots
  • 原文地址:https://www.cnblogs.com/hally/p/12628557.html
Copyright © 2011-2022 走看看