随着网络速度的发展,app在各种网络下的运行也成为一个倍受关注的话题,2g/3g/edge/4g/wifi,不同的协议,不同的制式,不同的速率。场景也更加丰富,空旷的大街,拥挤的地铁,快速飞驰的汽车。流量就是钱,凡是和钱相关的事情,就是大事。所以对于应用开发和测试都有不小的挑战。那从测试角度来说,需要关注的就远不止断网情况了。使用代理捕获网络信号进行环境部署来分析APP的延迟(加载)时间、内容,提出HTTP优化建议,让开发者能够在APP上线前提前预知app在较差网络环境下的表现,以便提前发现问题,进行有针对性优化。让app在任何网络情况下,都能表现自如。
工具:Charles
模拟网络:2g,2.5g(edge),3g,4g及其他。具体查看图-各种网络上下行带宽。
Charles 是在 Mac 下常用的网络封包截取工具,在做 移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。
Charles 主要的功能:1. 截取 Http 和 Https 网络封包 2. 支持重发网络请求,方便后端调试 3. 支持修改网络请求参数 4. 支持网络请求的截获并动态修改 5. 支持模拟慢速网络
1. 启动charles(没有请先安装)
2. 手机和mac连接同一无线网络。
3. 设置代理,查看mac ip地址(ifconfig en0)。
4. 设置手机代理和mac一样。
5. 网络模拟设置。
关于网速的选择
概念介绍:Bandwidth(带宽)、Utilistation(利用百分比)、Round-trip(往返延迟)、MTU(最大传输单元)
3G:300k-2Mbps左右
2.5G(GPRS)一般在100kbps
2G(GSM)一般在5-9kbps
如果不习惯自定义设置带宽等,可直接在Throttle Preset下拉列表中选择,按照顺序,网速逐渐提升。
设置好以后,你就可以启动你的app进行各种网络测试了。