什么是弱网测试

  1. 弱网测试主要就是对带宽、丢包、延时等进行模拟弱网环境的测试。(模拟在网络质量差的情况下导致网络丢包,抖动和延迟现象而引发的问题)
  2. 模拟不同的协议、不同的制式、不同的速率 异常网络环境进行健壮性测试,网页的响应时间、页面呈现是否完整一致,页面显示逻辑优化、重试机制加入等,

网络性能好坏的几个指标:
带宽:单位时间内传输的数据量,单位通常是:每秒比特数:bps。带宽反映了网络的传输能力,越大越好。
丢包:数据丢包个数=发送的数据包数 - 接收的数据包数。丢包反映了网络可靠性,越小越好。
时延:数据包从发送开始到接收到该数据,所耗费的时间,单位通常是 ms。时延反映了网络的速度,越小越好。
抖动:指时延的变化,即两个数据包时延的差值。抖动反映了网络的稳定性,越小越好。
乱序:指接收到的数据包顺序和发送顺序不一致的次数。乱序反映了网络的稳定性,越小越好。当乱序比较严重的时候,丢包也会比较严重,所以一般都以丢包指标为主,忽略乱序指标。

为什么需要做弱网测试

  1. 用户体验:
    1.1 使用过程中,弱网的高延迟和高丢包,在实时性要求非常高的场景,容易损失用户体验, 弱网测试是对网络不稳定或网络较差情况下,用户体验的重要保证,弱网状态下,产品的正确的表现与适当的引导,可以给予用户体验一部分保障,
    1.2 弱网测试作为健壮性测试的重要部分,同样也可以对提升产品的稳定性,提高用户体验做贡献,

  2. 非正常情况下,出现 bug 概率会增加
    提前预知在较差网络环境下的表现,以提前发现问题,进行针对性优化,服务面对异常的网络环境的健壮性不够,导致会出现一些意想不到的 bug。

  3. 弱网状态下数据的安全与稳定性是产品重要的指标,甚至可能可以对性能评估方面做一定的辅助作用。

  4. 常见问题:
    4.1 在请求数据的时候,由于网络较差出现有些接口请求失败导致显示上出现问题,
    4.2 在 update,insert 操作的接口的时候,出现重复提交数据, 而数据库没有做拦截出现重复的数据导致的问题,
    4.3 直播类网络差会导致绿屏,花屏,条纹,丢帧, 丢音等问题,
    4.4 APP 闪退等

弱网测试的衡量指标
衡量指标要根据实际使用环境来确定, 具体场景具体分析;

  1. 响应时间是否可接受,
  2. 数据的一致性和准确性,界面显示的正确性,
  3. 异常网络状态下的各种处理机制合理性 (超时,重连,容错,异常信息),
  4. 安全性 - 是否 dns 劫持等,
  5. 大流量 - 弱网下载或更新等.

弱网测试关注点及常用工具

Linux TC 工具介绍

linux TC 弱网环境搭建

linux TC 弱网的测试策略 (注意点)


↙↙↙阅读原文可查看相关链接,并与作者交流