当前位置:网站首页>浅谈专项测试之弱网络测试
浅谈专项测试之弱网络测试
2022-07-06 06:07:00 【测试界的飘柔】
一.弱网络测试背景
移动端产品的使用并非完全都是在流畅的wifi环境,大部分用户主要使用4G,3G,2G等网络,另外因为移动端产品使用的场景多变,如进公交,上地铁,坐电梯,使得弱网测试显得尤为重要。考虑到各种场景的客户端展示及容错,提升产品的印象和用户体验,提高产品的健壮性,弱网测试必不可少。
二.弱网络测试建议
网下需要进行功能点测试,无网络测试,网络切换测试等,测试过程除了关注功能点的实现,还应关注用户体验等各个方面
三.弱网络测试通用功能点总结
四.弱网络测试用例实例
五. Fiddler模拟弱网
1.手机设置上网代理
(1)启动Fiddler,打开菜单栏中的Tools-Fiddler Options,打开Options
(2)对话框
(3)在Fiddler Options对话框,点击Connections,勾选Allow romote computers toconnect后面的复选框,点击OK按钮
(4)在本机cmd里面输入:ipconfig,找到本机的ip地址
(5)打开Android设备的设置-WALN,找到和电脑连的一样的网络,长按-修改网络,弹出网络设置对话框,找到代理选择手动,主机名(电脑ip地址),端口8888(跟fiddler设置一致),然后点击确定按钮
2.Fiddler模拟限速环境
(1)设置端口号8888(保证没被占用)
(2)重启Fiddler
(3)手动设置上行,下行速率 网络取值算法:1000/下载速度=需要delay时间(毫秒),比如50kb/s,需要delay200毫秒来接收数据
Rules-Customize Rules-CTRL+F查找(SimulateModem),然后修改速率
2G/3G建议上下行速率如下:
(4)设置模拟调制解调器的速度rules-performance-simulate modem speeds -保存
(5)重启Fiddler
六.常见问题及原因
1.上传大图,多图,视频,文件时,在弱网环境下出现进度条走到一半卡住然后又从头开始。
原因:采用分段上传方式,在请求超时时间到时,分段传输没有结束,代码逻辑不对,导致每次重试都重头上传,一直循环。
2.在弱网络环境下容易出现登录不上或者登陆上马上掉线;
原因:登录没有缓冲机制,而请求超时时间的设置没有区分同网络情况;解决方案:针对wifi、2g、3g、4g设置不同的超时时间。
3.刷新页面很快就给出暂无内容的提示,明显没有到请求超时时间;
原因:可能是连接超时时间太短,wifi下设置两秒,在弱网络下需要加长。
4.弱网络环境下,请求的数据返回时间较长,等待的过程中,如果页面上的相关控件仍然可以操作,则有可能出现闪退现象;
原因:依赖数据的控件操作,在数据返回前没有做兼容处理。
5.逻辑错误。比如:购买时扣费和获得不一致,领取物品没到账等。
6.页面显示错误。比如:页面重叠。
7.用户登录应用时下载初始化数据,下载过程中因网速太慢点击取消并重新登录,
数据下载过程中、下载失败后,未进行数据回滚,中止后重新下载,出现数据重复
进行数据回滚,中止后重新下载,出现数据重复。
8.用户点击数据上传,数据上传过程中网络弱且不稳定,基于联网状态自动触发数据上传,导致出现数据重复写入,形成脏数据
9…在弱网环境下,用户输入用户名和密码点击登录,应用链接超时后,按照强网业务逻辑处理,导致返回超时异常。
10.在弱网环境下,用户输入用户名和密码后点击登录,数据下载超时,加载数据严重依赖于后来的异步加载。数据还没来得及返回,应用跳转到下个activity,导致崩溃。
11.弱网环境下某个操作响应时间
原因:APP用户对等待时间容忍度低,若弱网环境loading超过5s,用户很容易kill应用后再次进入应用
12.弱网环境下直至超时,UI界面友好度&APP是否稳定
原因:容错机制主要是考虑弱网情况下带来的不稳定,常见的问题是:loading超时导致ANR or crash
【测试点】弱网环境直至超时,判定为断网状态,UI界面和提示,友好且理解无歧义
13.断网后环境下,是否自动重发请求
原因:不同模块,开发对请求处理不同。测试前可了解,代码是否支持自动重复请求,自动重发请求的频率是什么?
【测试点】断网后恢复网络,是否堆积网络请求(目前来说理财模块 当10s左右无返回 则会重发请求),此时请求和返回正常情况下,是否出现异常情况。比如1次支付操作,断网后堆积多个支付请求,恢复网络后因堆积多个支付请求,是否完成多次支付。
ps:断网后恢复网络,考虑APP进行操作目的是否对伤害用户体验,通过哪种手段可以达到操作目的同时用户体验无感或者低伤害
14.弱网络环境下,请求的数据返回时间较长,等待的过程中,如果页面上的相关控件仍然可以操作,则容易出现异常现(闪退现象、触发底部时获得原页面请求数据)
原因:依赖数据的控件操作,在数据返回前没有做兼容处理
15.搜索时输入关键字会连续发请求,停下时,显示最终的关键字搜索结果,但很快又会被前面的关键字搜索结果覆盖了;
原因:中间的请求返回较慢,显示了最终的结果后,之前的请求返回的数据应不做处理。
最后: 可以在公众号:伤心的辣条 ! 自行领取一份216页软件测试工程师面试宝典文档资料【免费的】。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
我推荐一个【Python自动化测试交流群:746506216】,大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,助你快速进阶Python自动化测试/测试开发,走向高薪之路。
喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!
边栏推荐
- LTE CSFB process
- 【论文代码】SML部分代码阅读
- MPLS test report
- Baidu online AI competition - image processing challenge: the 8th program of handwriting erasure
- Cannot build artifact 'test Web: War expanded' because it is included into a circular depend solution
- [postman] collections - run the imported data file of the configuration
- As3013 fire endurance test of cable distribution system
- [postman] test script writing and assertion details
- properties文件
- Raised a kitten
猜你喜欢
IDEA 新UI使用
【论文阅读】NFlowJS:基于鲁棒学习的合成负数据密集异常检测
SQLMAP使用教程(三)实战技巧二
Function of activation function
HCIA review
Analysis report on development trends and investment planning of China's methanol industry from 2022 to 2028
MySQL之数据类型
关于 PHP 启动 MongoDb 找不到指定模块问题
Embedded point test of app
Caused by:org.gradle.api.internal.plugins . PluginApplicationException: Failed to apply plugin
随机推荐
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
Manhattan distance and Manhattan rectangle - print back font matrix
黑猫带你学UFS协议第4篇:UFS协议栈详解
Report on the competition status and investment decision recommendations of Guangxi hospital industry in China from 2022 to 2028
《卓有成效的管理者》读书笔记
数学三大核心领域概述:几何
Coordinatorlayout+nestedscrollview+recyclerview pull up the bottom display is incomplete
leaflet 地图
Commodity price visualization
[postman] collections configuration running process
A complete collection of necessary learning websites for office programmers
Cannot build artifact 'test Web: War expanded' because it is included into a circular depend solution
Clock in during winter vacation
Understanding of processes and threads
[postman] the monitors monitoring API can run periodically
【Postman】Collections配置运行过程
Function of activation function
【无标题】
Nodejs realizes the third-party login of Weibo
LAN communication process in the same network segment