ios app网络测试方案

常见的网络环境

App在使用的过程中,难免会遇到各种复杂的网络环境。常常会出现网络异常、上行或下行超时,导致应用中出现丢包。
所以,我们要对app在上线前做一定场景的弱网络环境测试,并查看app在各种网络环境下是否存在某些未知的问题。下面是我们常见的几种网络环境:

  • 正常的 WiFi
  • 4G
  • 3G
  • 2G
  • 高延时
  • 高丢包
  • 假热点
  • 无网离线状态

模拟网络环境

iOS 预置网络环境

Apple在 iOS 系统中预置了网络调试工具,添加测试设备并使用XCode连接设备激活开发者模式。将手机系统中“设置 —> 开发者 —> NETWORK LINK CONDITIONER ->Enable” 打开即可。

预制的网络环境.png

说明:

  1. 图中是系统中预制的网络环境,也可以根据不同需求自己配置相应的网络环境;

  2. 开启后影响的是整个系统的网络环境,所以测试完毕后不要忘记关掉;

自定义配置网络环境

根据不同的需求配置相应的网络环境,需要了解配置选项的含义,以100% Loss为例看看具体的配置及含义:

网络环境配置参数.png

说明:

  1. 带宽:
    带宽,是数据的传输能力,指单位时间内能够传输的数据量。
    上行带宽(速度)指的是上传的速度,而下行带宽(速度)指的是下载数据的速度。
  2. 丢包率:
    丢包,是指在通信中是指通信数据包丢失;丢包率是指所丢失数据包数量占所发送数据组的比率。
  3. 延迟:
    网络延迟是指各式各样的数据在网络介质中通过网络协议(如TCP/IP)进行传输,如果信息量过大不加以限制,超额的网络流量就会导致设备反应缓慢,造成网络延迟。
    网络延迟程度:

1~30ms:极快,几乎察觉不出有延迟,玩任何游戏速度都特别顺畅;
31~50ms:良好,可以正常游戏,没有明显的延迟情况;
51~100ms:普通,对抗类游戏能感觉出明显延迟,稍有停顿;
100ms以上:差,无法正常游戏,有卡顿,丢包并掉线现象

  1. DNS延迟:
    DNS的作用就是根据域名查出IP地址;在解析的过程中出现延迟。
  2. IPv4/IPv6 的Protocol选『Any』即可;
    各种网络环境的设置可参考下图进行配置:
网络环境 上/下行带宽(kbps) 上/下行丢包率(%) 上/下行延迟(ms) DNS延迟(ms)
2G 20/50 0/0 500/400 0
3G 330/2000 0/0 100/100 0
4G 40000/80000 0/0 15/10 0
正常WIFi 33000/40000 0/0 1/1 0
带宽有限环境 32/32 0/0 200/100 0
低丢包率、低时延的环境(上行) 33000/40000 10/0 100/100 200
低丢包率、高时延的环境(上行) 33000/40000 10/0 350/350 350
低丢包率、低时延的环境(下行) 33000/40000 0/10 100/100 200
低丢包率、高时延的环境(下行) 33000/40000 0/10 350/350 350
低丢包率、低时延的环境 33000/40000 10/10 100/100 200
低丢包率、高时延的环境 33000/40000 10/10 350/350 350
高丢包率的环境(上行) 33000/40000 90/0 100/100 200
高丢包率的环境(下行) 33000/40000 0/90 100/100 200
高丢包率的环境 33000/40000 90/90 100/100 200
网络超时(响应) 33000/40000 0/100 100/100 200
网络超时(请求) 33000/40000 100/0 100/100 200
网络超时(100%丢包) 33000/40000 100/100 100/100 200
无网(飞行模式)

弱网场景下的测试:

  1. 弱网下的功能测试

一般的功能测试都是在正常的Wi-Fi网络环境下进行的,为了保证程序的稳定性,至少应在一种弱网环境下(建议在iOS预置的100%Loss、Very Bad Network、High Latency DNS中选择一种)将所有功能测试过一遍。

  1. 弱网下响应超时的异常处理

a. 加载状态

加载过程中,检查加载图标、加载文案、Loading、进度条的正确性。

b. 响应超时:

不同的功能及页面根据业务的需要,应设置合理的超时限制;

响应超时处理:

1) 超时提示

商店数据加载、登录、收藏等操作,请求超时时,页面显示友好明确的异常提示;

2) 超时重连

购买、上传播放记录、下载等重要或不可重复的操作,超时或断网后,检查是否重新发送请求;

3) 稳定性

弱网情况下等待超时,检查使用网络功能的稳定性,有无异常闪退;

  1. 无网状态测试

a. 无网时请求网络操作(下载、注册登录、购买等),友好提示;

b. 已下载的音频可播放,缓存在本地的数据显示正常;

c. 无网状态的某些操作(播放列表、播放记录等),有网时上传;

  1. 大流量下网络形态测试

蜂窝网络情况下,下载、观看视频等大流量功能,询问用户是否使用蜂窝网络

你可能感兴趣的:(ios app网络测试方案)