什么是弱网测试?为什么要进行弱网测试?怎么进行弱网测试?「建议收藏」

什么是弱网测试?由于处在移动互联网盛行的时代,网络形态除了有线连接外,还有2G/3G/4G/Wifi/5G等多种手机网络连接方式。首先额外补充一些5G的知识;2分钟了解什么是5G。在前不久结束的MWC2018上,5G成了全球的一个热门话题,而国内对5G的关注度也是异常地高。实际上,与2G、3G、4G相比,我国在5G方面的布局并不晚于其他国家;而且中国三大运营商在中国5…

大家好,又见面了,我是你们的朋友全栈君。

什么是弱网测试?

由于处在移动互联网盛行的时代,网络形态除了有线连接外,还有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 。 在各类网络软件中,主要就是对带宽、丢包、延时等进行模拟弱网环境。但是方式是由一定的弊端的,不是非常接近弱网络环境,想要更接近弱网环境,例如大多数专项测试,会更倾向于通过硬件方式来协助测试,但这种方式又会变得很麻烦,都是通过「树莓派」网维协助搭建!如果出现有些无法模拟的情况,只能靠人工移动到电梯、地铁等信号比较弱的地方。补充一点,软件方式的成本低且实施起来容易操作。

弱网测试的思路

弱网功能测试:2G/3G/4G、高延时、高丢包

无网状态测试:断网功能测试、本地数据存储

用户体验关注:响应时间、页面呈现&超时文案&超时重连、安全及大流量风险

网络切换测试:Wifi—-4G/3G/2G—–无网多状态切换

弱网功能测试

这一部分主要是在各种非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包、下载文件等大流量动作。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126794.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • redis :read error on connection

    redis :read error on connection

    2021年10月27日
  • 一种导致AbstractMethodError问题的原因

    一种导致AbstractMethodError问题的原因1)App和B-lib依赖于A-lib的不同版本,并且都实现了A-lib中定义的一个接口IFunc,运行时A-lib会调用各IFunc实现;2)B-lib仅在编译阶段依赖A-lib,实际运行的是APP中集成的A-lib;3)APP端升级了A-lib,在IFunc中新增了一个方法aNewMethod()。由于B-lib并未针对v2版本的A-lib进行适配,因此运行时当A-lib调用B-l…

  • pycharm打开全部变成乱码_pycharm控制台输出中文乱码

    pycharm打开全部变成乱码_pycharm控制台输出中文乱码如上图所示:PyCharm默认打开时,pythonconsole中如果用到windows下cmd里的命令时,会输出乱码,原因:cmd默认的编码是gbk(代码页:936),而pythonconsole里面的编码是utf-8(代码页:65001),由于编码不一致,所以输出时会出现乱码解决办法:如下:1、File-Setting-Search-console-pythonconsol

  • 在总线周期的t1,t2,t3,t4状态,cpu_cpu总线分为

    在总线周期的t1,t2,t3,t4状态,cpu_cpu总线分为第一关:MIPS指令译码器设计要求我们设计译码器,那么首先要知道要指令的具体格式,通过查阅MIPS指令手册可以知道OPFuncSLT000000101010BEQ000100/ADDI001000/LW100011/SW101011/于是将获得的OP、Func和常数对比就行,相同输出1以下给出例子:第2关:定长指令周期—时序发生器FSM设计根据下图,知道次态和原态之间的关系。输入输出:法1:填写表格,生成表达式:

    2022年10月13日
  • JavaScript 数组排序函数sort()的使用

    JavaScript 数组排序函数sort()的使用简介  sort()方法是js中对于数组进行排序的函数。其可以方便快捷的实现对于数组的排序而不用我们自己编写排序方法。注:sort()函数会直接改变原数组。1.纯字符串数组排序letmyArray=[“people”,”person”,”apple”,”ziv”]console.log(myArray.sort())//打印结果[‘apple’,’people’,’person’,’ziv’]  其对于字符串数组直接按照字典顺序进行排序。注意:大小写字母也会影响排序结果,大

  • 网管工具箱小程序_小管家使用教程

    网管工具箱小程序_小管家使用教程

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号