什么是弱网测试
在当今移动互联网盛行的时代,网络的形态除了有线连接,还有2G/3G/Edge/4G/Wifi等多种手机网络连接方式。不同的协议、不同的制式、不同的速率,使移动应用运行的场景更加丰富。
从测试角度来说,需要额外关注的场景就远不止断网、网络故障等情况了。对于弱网的数据定义,不同的应用所界定的含义是不一样且不清晰的,不仅要考虑各类型网络最低速率,还要结合业务场景和应用类型去划分。按照移动的特性来说,一般应用低于2G速率的都属于弱网,也可以将3G划分为弱网。除此之外,弱信号的Wifi通常也会被纳入到弱网测试场景中。
为何要进行弱网测试
我当前所在项目的产品是一款适配于低资源环境的医疗IT系统,目前主要是在坦桑尼亚地区使用。根据资料显示,在坦桑尼亚等东非国家,普遍使用的都是2G网络,覆盖率达到40%以上,3G网络的覆盖都非常少,并且稳定性较差。由此,对于当前的App应用交付要求即至少在弱网以及无网状态下能正常运行。
如何做弱网测试
弱网环境测试主要依赖于弱网环境的模拟。环境搭建方式一般有两种:软件方式和硬件方式。软件方式的成本低,主要就是通过模拟网络参数来配置弱网环境,通常来讲可以达到测试目的.一般可通过热点共享设置。在各类网络软件中,主要就是对带宽、丢包、延时等进行模拟弱网环境。如果要求更接近弱网环境,比如现在很多的专项测试,会更倾向于通过硬件方式来协助测试,但这种方式相对会麻烦很多,一般会由网维协助搭建。当然,对于有些无法模拟的情况,只能靠人工移动到例如电梯、地铁等信号比较弱的地方。
之前也说过一些弱网测试的问题,具体测试工具就不说了,在强调下需要注意的几个问题场景:
用户登录应用时下载初始化数据,下载过程中因网速太慢点击取消并重新登录,数据下载过程中、下载失败后,未进行数据回滚,中止后重新下载,出现数据重复
用户点击数据上传,数据上传过程中网络弱且不稳定,基于联网状态自动触发数据上传,导致出现数据重复写入,形成脏数据
在弱网环境下,用户输入用户名和密码点击登录,应用链接超时后,按照强网业务逻辑处理,导致返回超时异常。
在弱网环境下,用户输入用户名和密码后点击登录,数据下载超时,加载数据严重依赖于后来的异步加载。数据还没来得及返回,应用跳转到下个activity,导致崩溃。
现在,一些应用公司对弱网断网测试越来越重视,在本身APP测试项目上,占比也更多。
弱网测试主要就是对带宽、丢包、延时等进行模拟弱网环境。属于健壮性测试的内容。。想象一下,用户在地铁里,巴士上,甚至是电梯,车库等场景使用APP,我们就需要针对这些场景的弱网环境下,验证出现丢包、延时软件的处理机制,避免因用户体验不友好造成用户的流失。
弱网测试中的常见参数标准
1-30ms:极快,几乎察觉不出有延迟
31-50ms:良好,没有明显的延迟情况
52-100ms:普通,能感觉出网络有明显延迟
大于100ms:差,有卡顿,丢包并掉线现象
(4)DNS延迟(ms)
DNS是域名解析服务器,延迟就是和这个服务器的连接速度,DNS的作用就是把网址解析成IP地址,因为电脑网络连接只能通过IP连接。
五、各个弱网环境参数
1、连续丢包:
在周期弱网中设置
上行:8000 弱网 2000ms
下行:8000 弱网 2000ms
2、极差网络:
网络带宽:上/下行—256kbps
网络延时:上/下行—400ms
延时抖动:上/下行—100ms 概率100%
随机丢包:上/下行—30%
3、100%丢包:
随机丢包:上/下行—100%