Skip to content

12. App 测试应该怎么测

App 测试和 Web 测试有相似之处,但也有明显差异。

App 的运行环境、安装更新、设备兼容、用户交互都和 Web 不同,测试时要针对性覆盖。

一、App 测试的核心差异

App 和 Web 的主要差异:

  • App 需要安装和更新;
  • App 运行在不同设备和系统;
  • App 有前后台切换和离线场景;
  • App 有推送通知和权限管理;
  • App 有手势和特殊交互;
  • App 有性能和电量消耗。

如果只像测 Web 一样测 App,很容易漏掉 App 特有问题。

二、安装、更新和卸载要测

App 的生命周期从安装开始。

要覆盖:

  • 新安装;
  • 覆盖安装;
  • 版本升级;
  • 版本降级;
  • 卸载重装;
  • 数据保留和清除。

比如覆盖安装后:

  • 老版本数据是否保留;
  • 新版本功能是否正常;
  • 登录状态是否保持;
  • 缓存是否清理。

三、功能测试要结合 App 场景

App 功能测试不只是点按钮,还要考虑 App 特有场景:

  • 前后台切换;
  • 杀进程重启;
  • 网络切换和弱网;
  • 离线模式;
  • 推送通知;
  • 权限弹窗;
  • 手机返回键;
  • 屏幕旋转;
  • 多任务切换。

比如视频播放功能:

  • 前台播放是否正常;
  • 后台播放是否暂停或继续;
  • 网络切换是否自动恢复;
  • 杀进程重启是否可续播。

四、兼容性测试要覆盖主流设备

App 兼容性比 Web 更复杂:

  • 操作系统:iOS、Android;
  • 系统版本:主流版本和常见历史版本;
  • 设备型号:主流机型和部分低端机;
  • 屏幕尺寸:不同分辨率和屏幕比例;
  • 运营商和网络:不同网络环境。

时间有限时,优先覆盖主流系统版本和主流机型。

五、弱网和离线要重点测试

App 经常在移动网络下使用,弱网和离线场景要重点测试:

  • 2G、3G、4G、5G 不同网络;
  • 网络切换:WiFi 切换到移动网络;
  • 网络中断和恢复;
  • 请求超时和重试;
  • 离线模式是否可用;
  • 离线数据是否缓存;
  • 恢复网络后是否同步。

很多 App 问题都是弱网和离线场景导致的。

六、权限和推送要专门测试

App 权限管理比 Web 更复杂:

  • 首次启动权限弹窗;
  • 拒绝权限后功能是否降级;
  • 再次请求权限的提示;
  • 权限设置变更后的行为。

推送通知要测试:

  • 前台收到推送;
  • 后台收到推送;
  • 点击推送跳转;
  • 推送权限关闭后的行为。

七、性能和稳定性要有基础意识

App 性能测试可以关注:

  • 启动时间;
  • 页面加载时间;
  • 滑动流畅度;
  • 内存占用;
  • 电量消耗;
  • CPU 使用;
  • 崩溃率。

专业性能测试可以由性能测试团队负责,但功能测试要有基础意识。

八、安全测试要关注 App 特有问题

App 安全测试可以关注:

  • 安装包是否可篡改;
  • 数据是否明文存储;
  • 接口是否可被抓包篡改;
  • 登录 Token 是否安全存储;
  • 日志是否泄露敏感信息;
  • Debug 模式是否关闭;
  • 权限是否过度申请。

这些问题往往是 App 漏洞的高发区。

九、面试回答模板

可以这样回答:

App 测试我会从安装更新、功能场景、兼容性、弱网离线、权限推送、性能和安全几个方面展开。安装更新要测新安装、覆盖安装、版本升级降级、卸载重装;功能场景要测前后台切换、杀进程重启、网络切换、离线模式、推送通知、权限弹窗、返回键、屏幕旋转;兼容性覆盖主流系统版本、机型、分辨率和网络;弱网重点测不同网络质量、切换、中断恢复和离线模式;权限推送关注弹窗、拒绝降级、点击跳转;性能关注启动时间、加载、流畅度、内存电量;安全关注安装包、数据存储、接口抓包、Token 和日志。

这个回答能体现你有完整的 App 测试思路。

十、下一步建议

建议你把一个熟悉的 App 功能按上面维度重新整理:

  • 安装更新场景;
  • App 特有交互场景;
  • 兼容性覆盖范围;
  • 弱网和离线场景;
  • 权限和推送场景;
  • 性能和安全关注点。

Powered by VitePress

🔒 需要口令解锁

关注微信公众号 测开阿Duang
回复关键词 「密码」 获取口令

公众号二维码

解锁后本浏览器长期有效