测试场景设计
| 场景 | 带宽限制 | 延迟 | 丢包率 | 判定标准 | 建议优化措施 |
|---|---|---|---|---|---|
| 2G 网络 | ≤ 250 kbps | 300–500 ms | 5–10% | - 页面首屏时间 ≤ 10s - 主要接口响应 ≤ 5s - 核心功能可用率 ≥ 95% |
- 图片懒加载 - 压缩资源(JS/CSS/图片) - 接口返回精简数据 - 异步加载非核心内容 |
| 弱 3G 网络 | 400–700 kbps | 150–300 ms | 2–5% | - 页面首屏时间 ≤ 6s - 核心接口响应 ≤ 3s - 核心功能可用率 ≥ 98% |
- 启用缓存策略 - 使用 CDN 加速 - 减少请求数量 - 使用骨架屏 |
| 普通 4G 网络 | 1–4 Mbps | 50–150 ms | 1–2% | - 页面首屏时间 ≤ 3s - 接口响应 ≤ 1s - 核心功能可用率 ≥ 99% |
- 压缩资源 - 合理预加载 - 接口优化(减少 SQL 查询复杂度) |
| 高延迟网络 | 网络正常 | 延迟 ≥ 300 ms | ≤ 2% | - 页面首屏时间 ≤ 2×正常网络 - 接口响应延迟 ≤ 2×正常 - 无明显卡顿 |
- 接口异步加载 - 数据缓存 - 合理降级(低质量图片、减少动画) |
| 高丢包网络 | 网络正常 | 延迟正常 | 丢包率 ≥ 5% | - 页面加载成功率 ≥ 95% - 核心功能可用率 ≥ 98% - 重试机制正常 |
- 接口幂等化 - 重试策略(指数退避) - 使用稳定协议(HTTP/2) |
| 离线或弱信号 | 无网络 / 极低带宽 | 极高延迟 | 丢包率高 | - 应用不崩溃 - 可缓存核心功能 - 给用户提示网络不可用 |
- 离线缓存(Service Worker / localStorage) - 数据同步机制 - 提示用户网络状态 |
测试执行流程
确定测试目标
- 页面加载性能 / 核心功能(登录、列表、下单、支付) / 交互流畅度
选择弱网模拟工具
- H5 页面 → Chrome DevTools Throttling
- App(Android/iOS)→ Network Link Conditioner / Charles
配置网络条件
- 按对照表选择带宽、延迟、丢包率
执行测试
- 记录页面首屏时间(FCP / LCP)
- 测试关键接口响应时间
- 检查功能可用性(是否能正常执行核心操作)
- 检查 UI 流畅度(FPS / 卡顿情况)
对照判定标准
- 符合对照表中的判定标准即为“弱网测试通过”
输出报告
- 网络条件配置
- 测试结果(加载时间、接口耗时、错误率、可用性)
- 优化建议