测试意识训练-10

46 阅读11分钟

题目来自Gemini

基础训练

场景设定: 电商 APP 的“购物车”功能 功能描述: 用户可以将商品加入购物车、修改商品数量、勾选商品进行结算,以及在购物车内领取适用的优惠券。

训练一:功能交互测试

  • 问题描述: 测试用户在购物车中修改商品数量(通过 “+”、“-” 按钮或手动输入)并实时同步总价的逻辑。
  • 挑战: 请列举出针对“修改商品数量”这一具体动作,至少 5 个关键的测试点。

训练二:异常与边界值测试

  • 问题描述: 考虑到移动端网络环境的复杂性,测试购物车在极端情况下的稳定性。
  • 挑战: 当用户点击“去结算”的同时,网络突然由 5G 切换到无网状态,或者服务器返回 500 错误,你应该关注哪些方面的表现?

训练三:用户体验(UX)测试

  • 问题描述: 购物车是转化的核心环节,需要极高的易用性。
  • 挑战: 从 APP 操作习惯出发,你会关注哪些提升用户体验的细节(例如手势、视觉反馈等)?

回答:

训练一:

1.正常“+”、“-”

2.数量修改为0时,继续点击“-”,功能是否正常(之前就遇到过这样的Bug)

3.数量达到最大值时,继续点击“+”,功能是否正常

4.能否正确输入商品数量

5.输入商品数量时,有没有处理特殊符号,能不能输入或粘贴负数,或通过某些操作超过边界值

6.快速“+”、“-”,是否有效(之前就遇到过这样的Bug)

训练二:

1.有没有给用户正确的提示(稳住用户心态,让用户知道发生了什么)

2.结算操作是否有原子性,要么完成扣费结算成功,要么结算失败

3.如果结算失败,订单是否保持完整(例如,订单会显示在历史订单或未完成订单中,而不是让用户重新选)

4.用户打开网络后,由无网状态切换回正常状态所需要的时间

5.用户打开网络后,由无网状态切换回正常状态后,订单状态是否正确(若切换网络后,仍保持在当前页面,那么需要确定客户端没有给服务器发送过结算请求)

训练三:

1.上下滑动功能正常

2.进入商品详情后退出,购物车订单列表仍在进入前的位置

3.用户看着舒服...

以下是对你回答的详细评价及补充:

基础训练评价与补充

训练一:功能交互测试(修改商品数量)

  • 评价: 满分 10 分可以给 9 分。你考虑到了边界值(0 和最大值)、异常输入(负数/特殊字符)以及压力/并发测试(快速点击)。尤其是快速点击导致的数据不同步,是移动端非常经典的异步请求问题。
  • 补充遗漏:
    1. 库存联动: 当修改数量超过商品当前实时库存时,是否有友好提示或自动回退到最大可用库存?
    2. 多端同步: 在 APP 修改数量后,如果同一账号在 Web 端或 H5 同时也打开了购物车,数据是否实时更新?

训练二:异常与边界值测试(网络切换/服务器报错)

  • 评价: 考虑到了用户感知(提示)、数据一致性(原子性)和断网重连逻辑,非常专业。关于“客户端是否发送过请求”的确认(第 5 点)切中了要害。
  • 补充遗漏:
    1. Loading 状态: 在网络切换或等待响应期间,是否添加了全局的 Loading 遮罩,防止用户在结果未返回前多次重复点击“去结算”导致重复下单?
    2. 超时处理: 如果服务器长时间不返回(或由于网络丢包导致请求挂起),客户端是否有合理的超时处理逻辑(如 10s 后自动弹窗重试)。

训练三:用户体验(UX)测试

  • 评价: 提到了路径记忆(列表位置保持),这是非常细腻的观察。
  • 补充遗漏(侧重 APP 特性):
    1. 左滑操作: 在 iOS 或 Android 列表项上,用户习惯左滑直接删除商品,这个交互是否支持?
    2. 软键盘遮挡: 当手动输入数量时,弹出的数字键盘是否会遮挡住“去结算”按钮或当前输入框,导致用户操作不便?
    3. 触觉反馈: 增加/减少数量时,是否有微弱的震动反馈或数值跳动的动画,让用户感知操作已生效。

测试意识训练

今日练习:第一题 场景描述: 某社交 APP 新增了“语音动态”功能,用户可以录制一段 60 秒以内的音频并发布,好友可以在信息流中点击播放。

挑战: 假设你要测试“发布语音动态”这个流程,除了音频能正常录制和上传外,从**移动设备硬件特性(Hardware Features)**的角度出发,你会设计哪些测试场景?

(提示:想想手机除了屏幕,还有哪些硬件会参与录音和播放的过程,或者会干扰这个过程?)

回答:

1.麦克风损坏?

2.emm...不知道了

  • 你的回答: 提到了麦克风损坏。
  • 评价: 这是一个非常基础且重要的物理硬件状态点。如果麦克风被占用或损坏,APP 是否有权限提示或错误引导是必测的。但移动端硬件的交互远比这复杂。

补充遗漏(移动端硬件特性场景): 从硬件角度出发,至少还有以下 4 个关键场景:

  1. 音频通路切换(蓝/线牙设备): 录音过程中断开/连上蓝牙耳机,或者播放时切换扬声器与听筒(接近传感器)。
  2. 物理按键干扰: 录音过程中按电源键(锁屏)、音量键(是否误触)、Home键(切到后台)。
  3. 中断处理(打断测试): 录音时突然来电、闹钟响起、系统低电量强弹窗。
  4. 存储与权限: 手机存储空间极其不足(导致缓存录音文件失败);或者用户手动在系统设置里关闭了麦克风权限后回到 APP 的表现。

测试意识训练:第二题

今日练习:第二题 场景描述: 一个新闻资讯类 APP 的“搜索”功能。用户输入关键词,系统返回相关的文章、视频和专题。

挑战: 假设我们要测试搜索结果的**“时效性”与“排序逻辑”**,你会设计哪些具体的测试用例来验证搜索出来的东西确实是用户“最想看到”且“最新”的?(请尽量往数据策略和后台逻辑上思考)

回答:

1.搜索最新的热点,查看排序和时效是否正确

2.搜索一个月前的热点,查看排序和时效是否正确

3.搜索三年前的热点,查看是排序和时效是否正确

以下是评价与深度补充:

测试意识训练:第二题评价

  • 评价: 你的思路属于**“结果验证型”**。通过不同时间段的关键词来观察返回结果,能直观发现排序算法是否在特定时间区间内失效。
  • 进阶分析: 但作为测试工程师,我们还需要更深入地去拆解后台的**“权重分配”**。仅仅看“对不对”是不够的,还要看在各种干扰项下它是否依然“精准”。

补充遗漏(数据策略与后台逻辑维度):

  1. 关键词匹配度 vs 时间权重: 如果一个三年前的标题完全匹配关键词,而一个今天的标题只是部分匹配,谁排在前面?(测试排序算法的动态平衡)。
  2. 置顶与人工干预: 测试带有“热”或“新”标签的条目是否强制排在第一位,即便它的发布时间比最新的新闻早 10 分钟。
  3. 内容流派权重: 验证视频、文章、专题在相同搜索词下的优先级。例如:当前策略是否在向短视频倾斜?
  4. 缓存更新频率: 实时突发新闻发生后,搜索结果多久能从后台索引中反映出来?(验证数据同步的延迟)。
  5. 地域时效性: 搜索“天气”或“交通”,返回的是否是用户当前所在地的最新信息,而非全国范围的旧信息。

测试意识训练:第三题

今日练习:第三题 场景描述: 一个短视频 APP 的“视频播放”功能。

挑战: 这是一个极其消耗流量和性能的功能。除了验证视频能点开播放、有声音以外,请从**“性能优化”与“流量控制”**的角度出发,你会设计哪些测试场景?(提示:考虑预加载、不同网络环境下的自动调节等细节)

回答:

1.连续刷24个小时视频,视频加载正常,APP不卡顿

2.当前视频之后6个视频,有没有预加载

3.不同网络环境下,视频的预加载策略

以下是评价与补充:

测试意识训练:第三题评价

  • 评价: * 第1点(稳定性): 24小时连续播放属于压力测试/稳定性测试,重点关注内存泄漏(Memory Leak)和 CPU 占用导致的机身发热,非常到位。
    • 第2点(预加载): 考虑到了后续视频的缓存,这是短视频 APP “秒开”的关键。
    • 第3点(流量控制): 关注到了网络策略,是性能优化的重点。

补充遗漏(性能与流量深度场景):

  1. 分片加载与流量节省: 验证视频是否是“看多少加载多少”?如果用户只看了 2 秒就滑走,预加载是否立即停止,以节省用户流量?
  2. 清晰度自动切换(码率自适应): 从 Wi-Fi 切换到 4G 时,APP 是否会自动从 1080P 降级到 720P 或 480P?是否有弹窗提醒用户正在使用移动流量?
  3. 弱网表现(丢包/高延迟): 在极差网络下,是优先保证音频流畅还是不断转圈?是否有低清晰度的保底方案?
  4. 硬件加速与功耗: 开启硬解码和软解码时,对电量的消耗对比。
  5. 首屏秒开率: 测试在清除缓存后,第一个视频从点击到画面出现的时间(通常要求在 200ms-500ms 内)。

总结与复盘

你完成了一次非常扎实的测试实战练习!

  • 你的优势:功能逻辑异常(如数量修改、网络断开、系统稳定性)有很敏锐的直觉,这能让你在黑盒测试阶段发现绝大多数严重的逻辑 Bug。
  • 进步方向: 可以尝试多从**“系统底层架构” (如内存、缓存、协议)和“用户感知细节”**(如触觉、视觉反馈、流量损耗)去挖掘场景。

通过今天的练习,你可以沉淀出以下三个测试“套路”:

  1. APP 交互的“快与慢”:
    • 快: 快速连续点击、快速切换页面(测试并发与异步请求的处理)。
    • 慢: 弱网下的长加载、长时运行的稳定性(测试内存释放与发热)。
  1. 硬件层面的“干扰与连接”:
    • 不仅仅关注屏幕,还要关注传感器(距离感应、重力)、外部设备(蓝牙、耳机)、系统中断(电话、通知弹窗)。
  1. 数据层面的“权重与策略”:
    • 搜索或推荐功能不只是搜得到,还要测算法偏好(时间权重 vs 匹配度)和成本控制(预加载 vs 流量消耗)。

📊 练习表现复盘

维度你的闪光点待加强/进阶的方向
功能逻辑对“数量增减”、“快速点击”等交互细节抓得非常准,有避坑意识需加强对“后端数据一致性”和“多端同步”的考虑。
异常处理具备极强的风险意识,能预想到断网、服务器 500 等极端情况。需关注异常后的“自动恢复机制”及“弱网优化策略”。
硬件意识能想到硬件损坏(麦克风)等极端物理状态。需拓展到硬件交互场景(如传感器、音频通路切换、物理按键)。
性能/数据关注长时稳定性(24小时压测)和缓存机制(预加载数量)。需深入到性能指标(内存泄漏、流量分片、码率自适应)。