vlambda博客
学习文章列表

APP性能测试—网络测试

当前APP网络环境比较复杂,移动运营商网络有2G、3G、4G、5G网络,甚至未来的6G网络,以及越来越多的公共Wi-Fi。不同的网络环境和网络制式的差异,都会对用户使用App造成一定影响。

另外,当前App使用场景多变,如进地铁、上公交、进电梯等,使得弱网测试显得尤为重要。如果App没有对各种网络异常进行兼容处理,那么用户可能在日常生活中遇到APP闪退、ANR、数据丢失等问题。因此App网络测试,特别是弱网测试尤为重要。

网络测试要点

弱网测试

如何进行弱网测试

  • SIM卡的网络切换( 手机-设置-移动网络设置-网络类型选择,可以进行2G/3G/4G网络切换)

  • 具体弱网场景测试,常见场景包括:地铁/巴士、电梯、楼梯间、停车场

  • 使用虚拟机模拟网络速度,如用树莓派搭建的弱网测试仪。

  • 使用网络代理工具如CharlesFiddler,模拟不同的网络带宽、延时率、丢包率。

Charles弱网测试

  1. 启动charles,依次点击菜单:Proxy->Throttle Setting

APP性能测试—网络测试

  1. 勾选启动流量控制

APP性能测试—网络测试

配置参数解析:

  • bandwidth :带宽,即上行、下行数据传输速度

  • utilisation: 带宽可用率,大部分是100%

  • round-trip latency:第一个请求的时延,单位是ms

  • MTU :最大传输单元,即TCP包的最大size,可以更真实模拟TCP层,每次传输的分包情况。

  • Reliability :指连接的可靠性。这里指的是10kb的可靠率。用于模拟网络不稳定。

  • Stability :连接稳定性,也会影响带宽可用性。用于模拟移动网络,移动网络连接一般不可靠。

  • unstable quality range:不稳定质量范围。

iOS设备弱网模拟

iPhone手机打开开发者选项:设置-开发者选项 > Network Link Conditioner入口。系统已经内置常见网络配置,也可以增加自定义配置。

APP性能测试—网络测试

APP性能测试—网络测试

APP性能测试—网络测试

APP性能测试—网络测试

具体配置参数:

  • in Bandwidth 下行带宽,即下行网络速度

  • In packet loss 下行丢包率

  • in delay 下行延迟,单位ms

  • out bandwidth 上行带宽

  • out packet loss 上行丢包率

  • out delay 上行延迟

  • DNS delay DNS解析延迟

  • protocol 支持Any,IPV4、IPV6

  • interface 支持Any,WI-Fi,cellular(蜂窝网)

Chrome弱网模拟

使用chrome的webview调试工具,缺点是只适用于web页面的弱网模拟。具体步骤:

  1. 应用打开webview调试功能,具体如下:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
  1. 手机链接电脑,运行APP,进入具体H5页面;

  2. chrome的DevTools中打开Webview:进入chrome://inspect/#devices,会显示已经连接设备,选中待调试webview的inspect network页面,No throttling下拉框,可以进行网络模拟。

APP性能测试—网络测试

2G~5G网络速率

要模拟不同网络,那么需要了解不同网络速率上下行频率与速率,这样测试起来才会更加接近实际的网络情况。首先我们看一下2G、3G和4G网络制式频段划分,特别提醒,以下内容多指我们国家的应用,部分制式还可能包含其它频段,速率部分也只是个参考值,实际应用还跟网络状况、级别甚至是运营商的RP都有关系,仅供参考。

2G

第二代移动通信技术,简称2G(Second Generation)。相对于前一代直接以模拟信号的方式进行语音传输,2G移动通信系统对语音系以数字化方式传输,除具有通话功能外,某些系统并引入了短信(SMS,Short message service)功能。在某些2G系统中也支持数据传输与传真,但因为速度缓慢,只适合传输量低的电子邮件、软件等信息。

2G技术基本上可依照采用的多路复用(Multiplexing)技术形式分成两类:一种是基于TDMA所发展出来的系统,以GSM为代表;另一种则是基于CDMA所发展出来的系统。

主要的第二代手机通信技术规格标准有:

  • GSM:以TDMA为基础所发展、源于欧洲、目前已全球化。

  • IDEN:以TDMA为基础所发展、美国独有的系统。被美国电信系统商Nextell使用。

  • IS-136﹙也叫做D-AMPS﹚:基于TDMA所发展,是美国最简单的TDMA系统,用于美洲。

  • IS-95﹙也叫做cdmaOne﹚:基于CDMA所发展、是美国最简单的CDMA系统、用于美洲和亚洲一些国家。

  • PDC﹙Personal Digital Cellular﹚:基于TDMA所发展,仅在日本普及。

APP性能测试—网络测试

3G

3G规范是由国际电信联盟(ITU)所制定的IMT-2000规范的最终发展结果。原先制定的3G远景,是能够以此规范达到全球通信系统的标准化。目前3G存在四种标准:W-CDMA、CDMA2000、TD-SCDMA、WiMAX。

APP性能测试—网络测试

4G

第四代移动通信技术(英语:The fourth generation of mobile phone mobile communication technology standards,缩写为4G),是3G之后的延伸。

从技术标准的角度看,按照ITU的定义,静态传输速率达到1Gbps,用户在高速移动状态下可以达到100Mbps,就可以作为4G的技术之一。4G包括TD-LTE和FDD-LTE两种制式。

有关部门对TD-LTE频谱规划使用做了详细说明:中国移动获得130MHz频谱资源,分别为1880 -1900MHz、2320-2370 MHz、2575-2635 MHz;中国联通获得40MHz频谱资源,分别为2300-2320 MHz、2555-2575MHz;中国电信获得40MHz频谱资源,分别为2370-2390 MHz、2635-2655 MHz。

APP性能测试—网络测试

5G

第五代移动通信技术(英语:5th generation mobile networks或5th generation wireless systems,简称5G)是最新一代移动通信技术,为4G(LTE-A、WiMAX-A)系统后的延伸。5G的性能目标是高数据速率、减少延迟、节省能源、降低成本、提高系统容量和大规模设备连接。

5G网络的主要优势在于,数据传输速率远远高于以前的蜂窝网络,最高可达10 Gbit/s,比先前的4G LTE蜂窝网络快100倍,另一个优点是较低的网络延迟(更快的响应时间),低于1毫秒,而4G为30-70毫秒。

验收标准

APP性能测试—网络测试

最佳实践

更多干货