1.弱网测试背景
弱网测试主要就是对带宽、丢包、延时等进行模拟弱网环境,属于健壮性测试的内容。
目前移动端用户所处的网络环境并非为完全流畅的WiFi环境,并且在WiFi环境下也会有网络波动。
在实时性要求非常高的场景,容易伤害用户体验,因此,为了避免用户体验不友好造成用户流失,弱网测试显得尤为重要。所以在我们测试的时候,进行必要的弱网测试还是有必要的。
2.弱网测试要点
总结如上图,弱网测试可分为弱网功能测试、网络切换测试、断网测试等,并且在不同网络环境测试的同时密切关注用户体验。
1)弱网下功能测试
关注页面数据加载时间即接口发出请求到数据返回响应时间,是否有友好加载提示如loading动画or进度条,在客户端设置超时时间内响应正常展示页面数据及使用功能,超出超时时间后显示异常友好提示即超时机制,以及根据场景判断超时后是否进行重连请求机制等。
2)进行网络切换
操作时,关注网络切换中正好处于数据加载状态,是否会导致App crash or ANR。
3)断网状态下
页面展示考虑三种加载情况,
一初始化从零加载应显示异常提示页面
二页面加载部分数据后断网,已加载数据是否正常展示,未加载部分是否与异常提示UI设计保持一致;
三已加载所有数据后断网重新刷新页面是正常展示还是覆盖已有数据(取决开发加载策略)。
在已有本地数据存储的情况下,查看断网重连后能否正常使用功能以及传参数据正确性。
在弱网前提下,我们既要关注网络问题,策略,还要保证是否有兜底方案,不能引发崩溃等问题,是否可以给用户合理的提示,让用户知道不是APP出现的问题,而是网络的问题,给用户最佳的体验。
三、弱网测试工具
在测试过程中,除了在实际场景如电梯、地下车库、地铁等环境进行模拟测试外,还可以借助第三方工具来进行网络模拟测试。
1.Charles
2.Fiddler
Rules-customer rules打开自定义脚本编辑器,找到如下图代码,更改带宽延迟设置
3.iOS自带开发者工具Network Link Conditioner
因为是苹果自带的网速模拟工具,需要在Xcode环境下激活手机设置中才会显示开发者选项
4.Facebook开源工具ATC
5.测试WI-FI的路由器的网络限速功能
现在很多路由器都可以限制对应的链接设备的网速,可以根据需要对设备进行限速
不同网络测试环境设置参考如下图:
实际的测试中,可以根据实际的业务的需求,去对网络的要求进行调整。