弱网测试总结

本文深入探讨了弱网环境下的APP测试策略,强调了弱网测试的重要性,特别是在用户体验和APP稳定性方面。文章列举了多种测试场景,如高延迟、高丢包、断网恢复等情况,并提出了具体的测试点和常见问题分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、【背景】

弱网测试,属于健壮性测试的内容。随着国内移动端迅猛发展,大大增加用户碎片化使用使用APP的。想象一下,用户在地铁里,巴士上,甚至是电梯,车库等场景使用APP,我们就需要针对这些场景的弱网环境下,验证出现丢包、延时软件的处理机制,避免因用户体验不友好造成用户的流失。

 

1.用户体验

APP使用过程中,弱网的高延迟和高丢包,在实时性要求非常高的场景,容易伤害用户体验。

2.非正常情况下,出现bug概率会增加

在解决日常的支持需求中,经常会遇到一些用户反馈一些无法简单复现的bug,有很大一部分的bug是由于用户自身的网络环境波动,或者是本身网络环境就较为恶劣,而服务在面对这种恶劣的网络环境的健壮性不够,导致会出现一些意想不到的bug。

完成弱网工具环境搭建,来梳理下弱网测试场景和测试点。

二、【弱网测试场景】

既然APP异常测试中,弱网测试属于必须考虑的测试项,哪些业务适合验证,哪些不需要验证呢?以下是个人浅见,欢迎抛砖引玉

1.结合APP本身属性

比如社交类APP(聊天、抢红包)对网络环境依赖性大且用户关注度高,弱网环境下需要重点关注。

结合互联网金融APP,申购流程中创建订单后是否支付成功,用户关注度最高(涉及扣费)。例如 弱网环境,创建订单失败,用户关注是否被扣费;创建订单成功后支付失败,再次支付是否重复扣费等。

2.使用频率&易遇到弱网的场景

比如微博APP【观看小视频】,用户在碎片时间极易【观看小视频】(APP用户喜欢使用碎片化时间进行娱乐操作),同时增加了【刷微博】(微博小视频和刷微博 操作场景重合)此处就需要加强弱网环境测试。

比如金融APP,用户在碎片化时间使用金融APP,领取奖品、查看理财类新闻、查看收益。

好的例子:据我所知,微信的升级就会监听用户是否插着电,连着wifi,一旦监听到了,就马上告诉你,现场可以升级。

二、【弱网环境测试点总结】

1.场景:弱网环境下某个操作响应时间

原因:APP用户对等待时间容忍度低,若弱网环境loading超过5s,用户很容易kill应用后再次进入应用。

【测试点】性能测试中,加入弱网环境测试点,检测各个场景网络请求的 API 消耗时间(此处可以放入性能测试中,做为衡量APP性能好坏的指标)。

2.场景:弱网环境下直至超时,UI界面友好度&APP是否稳定

原因:容错机制主要是考虑弱网情况下带来的不稳定,常见的问题是:loading超时导致ANR or crash。

【测试点】弱网环境直至超时,判定为断网状态,UI界面和提示,友好且理解无歧义。

3.场景:断网后环境下,是否自动重发请求

原因:不同模块,开发对请求处理不同。测试前可了解,代码是否支持自动重复请求,自动重发请求的频率是什么?

【测试点】断网后恢复网络,是否堆积网络请求(目前来说 理财模块 当10s左右无返回 则会重发请求),此时请求和返回正常情况下,是否出现异常情况。比如1次支付操作,断网后堆积多个支付请求,恢复网络后因堆积多个支付请求,是否完成多次支付。

ps:断网后恢复网络,考虑APP进行操作目的是否对伤害用户体验,通过哪种手段 可以达到操作目的同时用户体验无感或者低伤害。

比如,微信希望在线升级某些内容,会自动监听用户是否插着电 or 连着wifi,一旦监听符合上述场景,APP自动升级:

1)插电场景 确保升级过程中,耗电不会导致手机低电量甚至没电。

2)wifi场景,确保升级过程中,流量消耗不会使用用户话费中流量包,不会导致因消耗话费流量伤害用户体验

4.网络请求中,kill进程 (导致APP登录态掉线)。

登录同一个账号成功,应该不继续相同网络请求(要和RD确认,程序实际实现)。

登录不同账号成功,应该不继续相同网络请求(要和RD确认,程序实际实现)。

三、【常见弱网问题和原因分析】

1.场景:上传大图或者多图时,在弱网络环境下出现进度条走到一半卡住然后又从头开始

原因:采用分段上传方式,直至请求超时,分段传输没有结束,代码逻辑不对,导致每次重试都重头上传,一直循环。

2.场景:在弱网络环境下容易出现登录不上或者登陆后立即掉线

原因:登录没有缓冲机制,而请求超时时间的设置没有区分同网络情况。

解决方案:建议开发针对wifi、2g、3g、4g设置不同的超时时间。

3.场景:刷新页面很快就给出暂无内容的提示,明显没有到请求超时时间

原因:可能是连接超时时间太短,wifi下设置两秒,在弱网下设置需要更长。

4.场景:弱网络环境下,请求的数据返回时间较长,等待的过程中,如果页面上的相关控件仍然可以操作,则容易出现异常现(闪退现象、触发底部时获得原页面请求数据)

原因:依赖数据的控件操作,在数据返回前没有做兼容处理。

5.场景:搜索时输入关键字会连续发请求,停下时,显示最终的关键字搜索结果,但很快又会被前面的关键字搜索结果覆盖了;

原因:中间的请求返回较慢,显示了最终的结果后,之前的请求返回的数据应不做处理。

转载于:https://www.cnblogs.com/wangxiaoqun/p/10437200.html

### 测试报告编写指南 测试报告是评估小程序在不同络环境下的表现的重要文档,它需要涵盖测试目标、测试方法、测试结果以及改进建议等内容。一个结构清晰、内容详尽的测试报告有助于开发团队快速定位问题并优化用户体验。 #### 报告核心要素 - **测试目标**:明确本次测试的主要目的,例如验证小程序在络不稳定条件下的功能完整性、性能稳定性以及用户界面友好性。 - **测试环境**:详细描述测试过程中使用的络模拟工具(如 Charles、Network Link Conditioner)、设备型号、操作系统版本等信息。 - **测试用例**:列出所有涉及的测试场景,包括但不限于登录、数据加载、页面切换、断线重连等关键操作[^1]。 - **测试结果**:记录每个测试用例的实际执行情况,对比预期结果与实际结果之间的差异。 - **缺陷记录**:对于发现的问题,提供详细的复现步骤、影响范围及严重程度,并关联至缺陷管理系统中的编号。 - **改进建议**:基于测试结果提出具体的优化建议,例如增加缓存机制、改善错误提示、增强断点续传能力等。 #### 测试报告模板 以下是一个适用于小程序测试的标准报告模板: ```markdown ### 项目基本信息 | 项目名称 | 测试人员 | 测试日期 | 版本号 | |----------|----------|----------|--------| | 小程序A | 张三 | 2025/04/05 | v1.0.0 | ### 测试目标 - 验证小程序在延迟高、带宽低、丢包率高等不同条件下是否能够正常运行。 - 检查断恢复后小程序能否自动重连并继续未完成的操作流程。 - 分析小程序在环境下对用户交互体验的影响。 ### 测试环境配置 - 络模拟工具:Charles Proxy (版本 4.6.3) - 设备类型:iPhone 13, Android Pixel 4a - 操作系统:iOS 16.7, Android 13 - 络设置: - 延迟:200ms / 500ms / 800ms - 带宽:64Kbps / 128Kbps / 256Kbps - 丢包率:0% / 5% / 10% ### 测试用例与结果汇总 | 用例编号 | 测试模块 | 络条件 | 测试步骤 | 预期结果 | 实际结果 | 缺陷编号 | 备注 | |----------|----------|----------|----------|-----------|-----------|------------|------| | TC_001 | 登录功能 | 延迟 300ms, 带宽 56Kbps | 输入正确账号密码点击登录 | 显示加载动画,最终跳转首页 | 成功跳转但加载时间较长 | | | | TC_002 | 图片加载 | 延迟 500ms, 带宽 128Kbps, 丢包率 5% | 进入商品详情页查看图片 | 图片加载缓慢但能显示占位符或提示信息 | 图片加载失败,无提示 | DEF_002 | 需要优化图片加载逻辑 | | TC_003 | 表单提交 | 延迟 800ms, 带宽 64Kbps | 填写表单并提交 | 提交按钮变为禁用状态,提交成功后弹出提示 | 提交按钮未禁用,用户多次点击导致重复提交 | DEF_003 | 增加防抖机制 | | TC_004 | 页面切换 | 延迟 200ms, 带宽 256Kbps | 点击底部导航栏切换页面 | 页面加载有轻微延迟,无白屏或崩溃 | 页面加载卡顿,偶尔出现白屏 | DEF_004 | 优化资源预加载策略 | | TC_005 | 络中断恢复 | 断后恢复络 | 操作未完成时断再恢复 | 自动重连并继续操作流程或提示用户重试 | 操作中断,需手动重新开始 | DEF_005 | 改进断线重连机制 | ### 缺陷统计与分析 | 缺陷等级 | 数量 | 描述 | |----------|------|------| | 高 | 2 | 包括重复提交和图片加载失败等问题,直接影响用户体验 | | 中 | 1 | 页面加载卡顿,影响整体流畅度 | | 低 | 2 | 无提示信息、界面轻微抖动等不影响核心功能的问题 | ### 总结与建议 - 本次测试共执行了5个测试用例,发现了5项问题,其中3项为中高优先级缺陷。 - 主要问题集中在断线重连机制不完善、图片加载策略不合理以及表单提交缺乏防抖处理等方面。 - 建议开发团队加强以下几个方面的优化: - 增强断线重连机制,确保在络恢复后能自动继续未完成的操作。 - 优化图片加载逻辑,引入占位符机制并在加载失败时给予明确提示。 - 在敏感操作(如表单提交)中加入防抖机制,防止用户误操作导致的数据异常。 - 提升页面切换时的流畅性,减少因络波动带来的视觉干扰。 ``` ### 注意事项 - 在编写测试报告时,应尽量使用具体的数据和现象来支撑结论,避免模糊表述。 - 对于每一个测试用例,都应有明确的通过标准,以便后续回归测试时进行验证。 - 如果测试过程中发现严重问题,应及时暂停当前版本上线计划,并组织相关团队进行修复与验证。 - 所有测试结果应与产品需求文档保持一致,确保测试覆盖率达到预期要求。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值