让你明明白白学知识,有代码,有讲解,抄的走,学的会!
我使用了 【mdnice】排版,导致,内容过于庞大,一次性无法放下,只能连载
相关章节
5、清除记录
6、弱网环境
❝有的场景,我就是想要测试接口在弱网环境下的表现,但是我们的测试人员不可能跑到角落里,或者桥洞下取测试我们的应用吧, 这样描述,挺傻逼的,哈哈哈!!!
说一个真实的场景吧
场景1: 现在有一个上传, 需求是,上传中,有loading展示, 上传成功,切换界面;
现在接口响应太快了, 很快就切换到上传成功的界面,我不确定我的那个 loading 有没有生效,然后loading有没有正确的被关闭,如果接口报错,loading有没有按照预期效果被关闭
讲个段子: 你迷之自信,我的代码无敌,绝对不会有bug, 突然发现,后台接口报错,未关闭loading,测试同学给你提了一个bug, 你难过了一整天, 我的代码怎么会有bug!!!
进入正文
常见的测试手段
- 将请求接口写延时器, 过几秒以后再请求 --- 不好, 参杂多余代码
- 接口响应处写延时器, 过几秒再从封装的 fetch 方法中返回结果 --- 不好, 参杂多余代码
- 故意写错接口地址,测试报错,loading 是否被关闭 --- 不好, 参杂多余代码
- chrome 自带的 弱网 设置开启 -- 可以
- charles 开启 弱网 -- 可以
现在演示 chales 开启弱网的情况
上面2种方式都可以开启弱网设置,开启了,我们需要设置网速
这里就几个东西
- Enable Throttling 就是表示启动 弱网
- Only for Selected hosts 表示如果勾选了, 则弱网只对下面对名单有效,其他不在其中的host 则是正常网速
- Throttle preset 就是网速 比如 3G, 4G等
- Download 网络的下行速度 - 简单理解就是下载的网速
- Upload 上行速度 - 简单理解,就是文件上传的速度
我们我们可以从列表中选择我们的带宽(3G,4G) 如果没有,就自己添加一个情况(Add Preset 按钮)
然后刷新页面,查看响应效果,响应时间
开启弱网环境,语雀的页面的响应时间直接变成 56.67s 说明效果成功了
现在看看 Chrome 的弱网设置
有几个选项
- online 没有限制
- Fast 3G
- Slow 3G
- Offline 离线
同样,如果没有期望的网速限制, 则可以添加自定义网速设置
上面介绍了怎么设置以及测试弱网环境下,应用等表现, 有一点需要注意的是, 如果你本身网络环境不好,也就是你手机或者电脑连接等网速本身就是龟速,即使 chrome中或者 charles 设置成5G 网速,也是没啥用的;先天因素限制
场景2: 还有一种场景也比较常见的
app或者 web首页, 如果有启用 “骨架屏”效果, 弱网测试也是可行的,可以测试我们的布局是否ok
场景3: 测试接口超时,是否有做容错处理, 在支付场景,这种 容错/补救 措施,是十分有必要的
7、开启charles 发现访问任何网页都没有数据了,直接断网了,QQ也下线了
莫慌, 肯定有什么魔法被打开了,导致个现象
如果你发现退出charles ,所有都正常了,请检察下面的
可能是你不小心碰到了快捷键,勾选了它, 表示只有列表里的请求,才能进来,其他的都被拒之门外; 发现没, 它不仅仅是拦截web, 连桌面引用的请求,也能强有力的拦截