【软件测试】测试移动弱网时踩过的坑 | 值得你借鉴!

什么是弱网测试?

由于处在移动互联网盛行的时代,网络形态除了有线连接外,还有2G/3G/4G/Wifi/5G等多种手机网络连接方式。首先额外补充一些5G的知识;2分钟了解什么是5G。

在前不久结束的 MWC 2018 上,5G 成了全球的一个热门话题,而国内对 5G 的关注度也是异常地高。实际上,与 2G、3G、4G 相比,我国在 5G 方面的布局并不晚于其他国家;而且中国三大运营商在中国 5G 发展中的角色至关重要,因此它们在 5G 上的节奏基本上决定了整个中国 5G 的迈进步伐。


身为一个合格的测试人员,需要额外关注的场景就远不止断网、网络故障等情况了。还要对于弱网的数据定义,不同的应用所界定的含义是不一样且不清晰的,不仅要考虑各类型网络最低速率,还要结合业务场景和应用类型去划分。按照移动的特性来说,一般应用低于2G速率的都属于弱网,也可以将3G划分为弱网。除此之外,弱信号的Wifi通常也会被纳入到弱网测试场景中。


那么为何要进行弱网测试?  

确实有这种情况,就拿一款适配于低资源环境的医疗IT系统项目来说,而它的使用场景主要是在一些2G网络环境下,3G网都很少,并且稳定性也是比较差。因此,这款AP应用要想完成交付,就一定要在若网状态甚至在没有网络状态下运行。


如何做弱网测试?

首先,只要搭建出来弱网环境,模拟一个弱网环境即可。可以通过软硬件方式两种。软件方式利用模拟网络参数来配置弱网环境,就可以达到目的。你也可以选择第三方,比如,Charles , Network link Conditioner 。 在各类网络软件中,主要就是对带宽、丢包、延时等进行模拟弱网环境。但是方式是由一定的弊端的,不是非常接近弱网络环境,想要更接近弱网环境,例如大多数专项测试,会更倾向于通过硬件方式来协助测试,但这种方式又会变得很麻烦,都是通过「树莓派」网维协助搭建!如果出现有些无法模拟的情况,只能靠人工移动到电梯、地铁等信号比较弱的地方。补充一点,软件方式的成本低且实施起来容易操作。


弱网测试的思路


弱网功能测试

这一部分主要是在各种非wifi网络环境下进行的功能测试,同时模拟高延时和高丢包的异常网络环境进行健壮性测试。关注网页的响应时间、页面呈现是否完整一致等。高延迟和高丢包的网络环境需要借助工具来模拟,在windows环境下可以使用fiddler和network emulator for windows toolkit来模拟,在mac环境下则可以使用Charles和Xcode自带的开发环境网络异常模拟工具进行。工具的使用在工具篇具体介绍。 弱网功能测试建议将整体的功能测试用例在弱网环境下进行一轮测试,相同模块下的功能可以分多个网络条件进行测试。这部分发现的问题可能会有:页面图片在弱网环境下加载不出来(图片加载逻辑需优化)、需要模板的页面板式结构混乱(模板文件在弱网环境的加载需优化)、页面响应时间较长没有任何显示(页面显示逻辑优化、重试机制加入)等。

网络切换测试

这部分主要是进行几个不同网络场景的切换,包括wifi-2G/3G/4G、wifi-无网、2G/3G/4G-wifi、2G/3G/4G-无网、无网-2G/3G/4G、无网-wifi等。主要关注页面的显示与交互,尤其是弱网到wifi,wifi到弱网的情况,是否会有页面的crash以及显示的错乱、session是否一致、请求堆积处理等。

用户体验关注

弱网测试的目的就是尽可能保证用户体验,关注的关键点包括:

1)页面响应时间是否可以接受,关注包括热启动、冷启动时间、页面切换、前后台切换、首字时间,首屏时间等。

2)页面呈现是否完成一致。

3)超时文案是否符合定义,异常信息是否显示正常。

4)是否有超时重连。

5)安全角度:是否会发生dns劫持、登陆ip更换频繁、单点登陆异常等。

6)大流量事件风险:是否会在弱网下进行更新apk包、下载文件等大流量动作。

end

推荐阅读:

【软件测试】测试工程师应该如何设计一个完整的测试用例呢?

【软件测试】八年测试经验测试总监浅谈 bug 的那点事~

你可能感兴趣的:(【软件测试】测试移动弱网时踩过的坑 | 值得你借鉴!)