另一方面,弱网测试网络要求代理proxy (进行目标操作(修改返回值延迟丢包等) )返回数据接收端
二、弱网测试的重要性1 .弱网时,丢包、延时软件处理机制不足,程序处理存在问题
2 .实时同步场景-微信视频聊天、远程会议、同步刻录等
例如,网络直播网不好的话会出现绿色屏幕、花屏、条纹。 丢帧等问题
三、弱网测试会出现哪些bug:https://www.Jian Shu.com/p/7 B1 cbb 4a0e 73
1 .现象:未进入后台,前端要求开始时可以定时。 请求完成或在一定时间内删除计时器
2 .现象:用户登录APP时下载初始化数据,下载过程中点击取消再次登录,数据初始化完成后出现重复,导致数据不匹配
原因:数据下载过程中,下载失败后未回滚数据,中止后重新下载,发生数据重复
解决方案:在事务数据下载逻辑中,下载失败后,可以应用本地数据库进行数据回滚
3 .用户点击数据上传,数据上传过程中网络变弱不稳定,基于网络状态自动触发数据上传,发生数据重复写入,形成脏数据
原因:数据上传过程中,重传机制失败,导致连续两次写入,未进行唯一的识别处理
解决方案:根据数据的特性,根据关键字段(如创建时间、密钥值等)对可能导致脏数据的位置生成散列值,并在标记记录的唯一性(即数据写入)时,返回hash
原因:采用分段上传方式,在请求超时之前,分段传输没有完成,代码逻辑错误,每次重试都要抬头,一直循环。
采用分阶段上传方式,在请求超时之前,由于分阶段传输没有完成,代码逻辑错误,每次重试后上传都会重新开始,循环仍在继续。
4 .现象:弱网环境下,输入用户名密码登录时,应用链接超时返回用户名和密码错误信息
原因弱网环境下连接超时后,由于按照业务逻辑处理,导致返回超时异常
解决方案:弱网连接超时后,检查APP应用程序的本地数据库中是否有用户注册信息,如果有,获取本地用户信息进行注册
5 .现象:弱网状态,用户登录时崩溃闪回
原因:弱网环境下数据下载超时,加载的数据严重依赖后续异步加载,数据尚未返回,APP应用程序跳到下一个活动,发生崩溃
解决方案:强健的数据下载处理标记后台数据下载状态下载接口,依赖数据下载完成后进行寻呼跳转
6 .现象:在弱网环境下,用户请求页面的响应时间较长,等待时页面上的部分空间仍可操作,用户单击控件将出现闪回现象
原因:没有判断数据加载过程,可以直接暴露控制。 如果发生依赖于数据的控制操作,则在数据返回之前没有进行兼容处理
解决方案:重新加载数据时,设置页上的外部曝光控件为“不可操作”,数据加载完成后释放
7 .现象:在弱网络环境下,用户首次输入搜索关键字没有得到响应后,再次输入新的关键字发送请求,等待搜索结果返回,然后当前结果页面被以前的关键字搜索结果覆盖
原因:在中间请求回复缓慢并显示最终结果之后,请勿处理以前请求返回的数据。 客户端经常处理。 如果请求对象发送失败,客户端将重试。 请求必须异步进行。 在这种情况下,重试可能会失败。 还在发送请求,重试策略有问题。 如果服务器爆胎,请重试请求。 绝对会让APP破裂…
解决方案:取消未完成异步请求的任务
四、弱网测试要点1 .场景:互联网金融APP,下单流程下单后,支付是否成功,用户关注度最高(涉及资费扣除)。
测试点:
网络环境薄弱,订单制作失败,用户关注是否扣费; 订单制作成功后,如果支付失败,将再次支付是否进行费用的重复扣除等。
2 .场景:在网络薄弱的环境中超时之前,用户界面友好的APP是否稳定
测试点:
在网络弱环境超时之前,判断为网络断开的主题,UI接口和提示友好。 (如果容错机制主要考虑网弱,则常见的问题是加载超时“anr”(应用程序不请求寻址)或“or crash”
3 .场景:在断网后的环境中,是否自动重新发送请求
测试点:
断开网络后,是否恢复网络,积累网络请求(目前理财模块10s左右不回来就重新发送请求),此时请求和返回正常,是否会出现异常情况。 例如,通过一次支付操作,断网后积累多项支付请求,恢复网络后积累多项支付请求,多次支付是否完成。
4 .场景:微信希望在线升级部分内容,它会自动拦截用户是否连接到电源wifi,并在匹配上述场景时自动升级APP
测试点:
1 )插件场景下,升级过程中,避免耗电量降低手机电量和没电。
2 ) wifi场景避免在升级过程中流量消费不使用用户话费流量包,而不破坏用户体验
五.弱网测试常见网络参数及计算与思路1 .常见弱网参数
2 .常见计算【fiddler配置用】
3.测试思路通过Android设备连接到PC上进行弱网络测试,比如Fiddler,Charles,NET-Simulator等。基本思路是在PC上装一个Fiddler网络抓包工具,然后再将Android设备的网络代理到PC上,通过在PC上的Fiddler在设置延时来进行弱网络模拟。
在专有服务器上构建弱网络Wi-Fi,移动设备连接该Wi-Fi进行弱网络测试,相关的技术方案有Facebook的ATC和腾讯的Wetest-WiFi;
六、弱网测试工具及方法方法一:fiddler中启动弱网
1.启动弱网
Rules->Performance->勾选 Simulate Modem Speeds
2.配置网速
菜单Rules—>Cutomize Rules
3.代码解析:
首先来判断m_SimulateModem是否为true(是否开启),也就是是否设置了弱网模式。oSession[“request-trickle-delay”] = “300”; Delay sends by 300ms per KB uploaded:上传1KB内容需要300ms,转化一下上传速度:1Kb/0.3s = 3.3KB/s,也就是说网络上行速度只有3.3KB。 oSession["response-trickle-delay"] = "150"; Delay receives by 150ms per KB downloaded:下载1KB内容需要150ms,转化后的下载速度:1KB/0.15s=6.6KB/s,也就是说网络下载速度只有6.6KB。 如果你想设置下载的速度为50KB/s,你则需要设置Delay 时间为 20ms。也可以限制上传的速度,调整oSession[“response-trickle-delay”]的值即可。4.cmd看一下是否有丢包现象
方法二:QNET使用
1.登录后,选择测试app
2.弱网模板设置
3.使用效果
4.详情使用文档可以查看官网的文档操作
https://wetest.qq.com/product/qnet/