网络切换测试:Wi-Fi 与蜂窝来回切时应用会不会断
用户一天里要经历无数次网络切换:出门 Wi-Fi 断开跳 5G、进电梯信号丢失、回办公室重连 Wi-Fi。切换瞬间的处理质量,决定了「偶尔卡一下」和「 App 直接异常」的差别。
切换矩阵
完整覆盖至少六种转换:
Wi-Fi ↔ 4G/5G ↔ 无网
Wi-Fi ↔ 无网
4G/5G ↔ 无网
QNET 在切换测试里的两种用法
- 弱网叠加切换:切换的同时保持弱网模板运行,模拟「切到蜂窝但蜂窝也很差」的现实处境。比如设备开 30% 丢包模板后手动关 Wi-Fi,观察应用在「双差」下的表现;
- 断网型模板替代物理断网:用 100% 丢包模板代替开关飞行模式——状态变化由 QNET 在 VPN 层制造,不触发系统的网络切换事件,适合验证应用层的超时逻辑而非系统广播处理,两者互补而非互替。
模板选择见断网与断线重连类模板。
切换测试的检查点
- 切换瞬间进行中的请求会不会整体失败,失败后是否有重试;
- 长连接(IM、推送)断开后多久能重连,重连会不会风暴;
- 恢复后页面数据是否会刷新到最新,还是停留在切换前的旧状态;
- 下载类任务跨切换能否续传(蜂窝计量网络下很多产品会主动暂停,确认策略符合设计)。
验证手段
切换过程时间轴短、事件密,肉眼盯不如机器记:
- 抓包全程开着,事后看切换点的静默与重连时序,方法见pcap 文件与 Wireshark 分析;
- html 报告的趋势图能标出切换瞬间延迟/丢包的跳变,见测试报告:csv 与 html 两份输出;
- 自动化场景用 adb 在切换前后注入不同参数,流程见adb 自动化实战。
一个容易漏的场景
「Wi-Fi 已连接但实际不通」(路由器假在线)是比断网更隐蔽的状态:系统认为有网,应用一切请求都失败。用 QNET 的 100% 丢包模板叠加 Wi-Fi 环境即可稳定重现这一状态,检查点与断网一致。
切换测试属于「环境变化」类用例,与纯弱网档位互补;完整的用例归置见弱网用例设计清单。