APP弱网测试

1、网络测试的通常流程ios

step1:首先要考虑网络正常的状况缓存

① 各个模块的功能正常可用安全

② 页面元素/数据显示正常 服务器

 

step2:其次要考虑无网络的状况网络

① APP各个功能在无网络状况下是否可用session

② APP各个页面之间切换是否正常app

③ 发送网络请求时是否会致使闪退、卡死等异常状况工具

④ APP各个页面是否显示完整美观,未刷新的页面是否作了相应的提示和处理测试

⑤ 在无网络状况下数据是否会丢失优化

⑥ 无网络提示信息是否友好

 

step3:再次考虑弱网状况

① 弱网状况下APP是否针对请求作了超时处理

② 网络延迟的状况下,操做app进行数据同步、OTA升级是否会发生Crash、ANR等严重错误

③ 弱网状况下,APP请求回调未完成时,执行其余动做以及交互时,是否会出现APP闪退(如:驾考IOS开屏闪退)等异常。

④ 弱网状况下,原始数据是否出现丢失的状况(弱网下载时会出现丢包状况)

⑤ 弱网环境下,是否会出现请求堆积的状况

⑥ 弱网环境下,APP各个页面是否显示完整

⑦ 系统超时,提示信息是否清晰明确

⑧ 弱网状况下APP的响应时间是否在一个合理的时间范围内

⑨ 请求回调未完成--驾考科四难题攻克弹窗

⑩ 这个弹窗是服务器说了算,服务器知道该用户啥时候弹弹窗。若用户在作题页面时返回了,则该用户下次进入且在服务器缓存时间内,应该给出弹窗(产品逻辑:弹窗出现后用户必须看到才消失)

⑪ 请求堆积:水池注水排水问题

 

step4:最后考虑网络状态之间的转变

① 断开网络链接之后,操做APP各个功能是否正常

② 同步数据过程当中,断开网络链接,APP是否出现异常状况

③ 传输数据过程当中,网络由wifi切换到gprs,APP是否出现异常状况

④ 弱网环境下发送的请求是否在恢复网络之后出现重复提交的状况

tips:gprs---就是我们一般所说的流量

 

2、背景介绍

弱网测试做为健壮性测试的重要部分,对于移动端的测试来讲必不可少。

目前的网络并不是彻底的流畅WiFi,目前使用最多的是2G,3G,4G,且使用场景多变,如近地铁,上公交,进电梯,进山区等是的弱网测试显得尤其重要。

 

测试维度

 

 

弱网测试的思路

 

总结:

一、弱网测试主要进行特殊网络状态下的功能测试,同时关注用户体验。

二、弱网测试主要包括弱网功能测试、无网状态测试、网络切换测试等

 

3、弱网功能测试

① 这一部分主要是在各类非wifi网络环境下进行的功能测试,同时模拟高延时和高丢包的异常网络环境进行健壮性测试。

② 2G/3G/4G的网络能够经过使用电话卡移动/联通/电信等网络进行模拟,关注页面的响应时间、页面呈现是否完整一致等。

③ 高延迟和高丢包的网络环境须要借助工具来模拟,如Charles。

④ 弱网功能测试建议将总体的功能测试用例在弱网环境下进行一轮测试,相同模块下的功能能够分多个网络条件进行测试。这部分发现的问题可能会有:

  • 页面图片在弱网环境下加载不出来(图片加载逻辑需优化)
  • 须要模版的页面版式结构混乱(模版文件在弱网环境的加载需优化)
  • 页面响应时间较长没有任何显示(页面显示逻辑待优化、重试机制加入)

 

4、弱网UI测试

弱网状况下:

  • APP极可能出现UI刷新不及时或者不刷新的状况,此时就可能会致使呈如今用户面前的是一个残缺的页面;
  • 偶会也会致使出现页面UI元素错乱的状况(如:驾考vip页面);

 

5、无网状态测试

无网状态测试则是在切换网络的状况下进行的测试,主要关注页面的显示与交互、本地数据的存储、断网功能的使用等,常常该部分也须要与网络切换部分协同进行。

  • 断网状况下请求非本地数据的页面须要设定必定的时间等待上限,及时提示网络异常以及提示重试;
  • 断网状况下请求部分本地数据的页面须要观察本地数据的部分是否加载显示正常,待请求的部分是否符合交互给的缺省样式一致;
  • 断网状况下请求彻底本地数据的页面是否显示正常。这里还需考虑本地数据存储的状况,有些须要联网后上报服务器的数据本地是否正确存储,联网后这些数据可否正常上报。
  • 无网状态测试建议按照页面划分进行,针对每一个页面单独测试无网状态的显示,页面间跳转的显示,页面内功能的点击和显示,同时关注无网到有网时的页面恢复显示状态、数据上报状况是否正常。

注:以驾考课件视频为例作个补充

  • 无网无缓存时作题页面不显示课件视频模块;
  • 无网有缓存,且在缓存时间内,点击视频时能够正常播放;

 

6、网络切换测试

这部分主要是进行几个不一样网络场景的切换,包括:

wifi-2G/3G/4G、wifi-无网、2G/3G/4G-wifi、2G/3G/4G-无网、无网-2G/3G/4G、无网-wifi

主要关注页面的显示与交互,尤为:

  • 弱网到wifi
  • wifi到弱网

以上两种状况验证是否会有页面的crash以及显示的错乱、session是否一致、请求堆积处理等。

 

7、用户体验关注

弱网测试的目的就是尽量保证用户体验,测试点以下:

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

(2)页面呈现是否完整一致

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

(4)是否会有超时重连

(5)安全角度:是否会发生dns劫持

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

热启动:已经启动过APP了,而后切换到后台,或者退出,可是这时候应用并无彻底退出,可能应用还有一些服务在后台启动

冷启动:就是以前没启动过APP

dns劫持:又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围之外的请求放行,不然返回假的IP地址或者什么都不作使请求失去响应,其效果就是对特定的网络不能访问或访问的是假网址。常见的分为2种:网页劫持/运营商劫持

好比:输入www.baidu.com,结果打开了淘宝网,就说明百度的dns被劫持了;

Android驾考宝典进入vip页面时被劫持;

 

8、响应时间

  • 安卓手机通常超过5秒钟无响应就会报ANR的错误
  • ios手机响应时间过长也会报错
  • 2-5-10原则(或3-5-8):
  • 用户可以忍受的最佳响应时间是2秒之内;
  • 超过5秒无响应的话,通常性子比较急躁的用户极可能就会直接退出页面了;
  • 若是超过10秒无响应,不少人都会选择杀掉APP;
  • APP常常处于无响应或者响应时间过长的状态,会致使大批的用户转移到竞争对手的产品上。

 

9、异常测试

异常测试是指验证APP针对各类网络异常状况是否作出了容错处理,这里面包括:

① 异常提示信息

② 出错容错机制

③ 超时判断处理机制(代码级别)

④ 出错之后自动重连等

tips:

容错机制---简单点可理解为: 我快速点击屡次,可是就响应一次

出错后重连---就是访问网络,没获得数据,在错误的地方从新访问网络。如:驾考VIP



10、弱网测试工具--Charles模拟慢速网络

 

在 Charles 的菜单上,选择 “Proxy”–>“Throttle Setting” 项,在以后弹出的对话框中,咱们能够勾选上 “Enable Throttling”,而且能够设置 Throttle Preset 的类型。如右图1所示:

 若是咱们只想模拟指定网站的慢速网络,能够再勾选上图中的 “Only for selected hosts” 项,而后在对话框的下半部分设置中增长指定的 hosts 项便可。

 进行这项设置后,咱们会看到小红旗处于工做状态,如右图2

 

  ​  

 

PS:弱网、2G、3G建议的上下行速率以下,同时还能够控制丢包率的数据

      网络             上行               下行

      弱网               10                 30

      2G                 15                 50

      3G                384               2800

  

补充:了解下2G/3G网络

 

 

相关文章
相关标签/搜索