App装不上、升级丢数据、卸载不干净——这三个“入门级”测试,漏一项就是事故
做App测试,很多人上来就盯着功能逻辑、页面交互,却把安装、卸载、升级这几个环节当成“点一下就过”的流程。
踩过这个坑的人都知道,安装和升级恰恰是用户接触你产品的第一个动作。这一步出了问题,用户连首页都看不到,后面的功能做得再好也白搭。
这篇我把安装、卸载、升级三个场景拆开,一步步讲清楚每个环节该测什么、容易漏什么。
一、首次安装,测的不只是“能不能装上”
大部分人对安装测试的理解就是,点击安装,等它装完,打开看看能不能用。
但其实首次安装要关注的东西比这多不少。
权限申请是第一个重点。 App装完首次打开,通常会弹出一系列权限请求,比如相机、定位、通知、存储等等。你需要验证的是,用户同意和拒绝这些权限后,App的表现是否都正常。比如用户拒绝了定位权限,App会不会直接闪退?会不会卡在某个页面动不了?
引导页是第二个重点。 很多App首次打开会有新手引导或者欢迎页,你得确认这些页面能正常展示、正常跳过,并且只在首次安装时出现,而不是每次打开都弹一遍。
核心就两步,一看权限拒绝后App是否兜底,二看引导流程是否只触发一次。
今天测试的时候可以先把这两项跑一遍。
二、覆盖安装,容易被忽略的“版本冲突”
覆盖安装就是在已有App的基础上,再装一个包上去,不卸载原来的版本。
这里有个常见误区,很多人只测“新版本覆盖旧版本”这一种情况。但实际上至少要覆盖三种场景。
-
同版本覆盖同版本,验证不会出现异常报错或数据丢失
-
新版本覆盖旧版本,这是最常规的升级路径,重点看功能和数据是否正常
-
旧版本覆盖新版本,也就是低版本覆盖高版本,这种情况在正式环境里不太常见,但测试中必须验证,因为有些系统允许这样操作,一旦出问题就是数据错乱
每种覆盖安装之后,都要检查一下App能否正常启动,原有的登录状态和本地数据还在不在。 这一步没有捷径,得老老实实一个个跑。
三、卸载测试,关键看“干不干净”
卸载不是点个删除就完事了。
你需要验证两件事。第一,卸载之后App的本地数据有没有被清理干净。 缓存文件、数据库、本地配置,这些如果残留在手机里,可能会影响后续的重新安装。
第二,卸载之后重新安装,App是否回到全新的初始状态。 引导页该出现的要出现,权限该重新申请的要重新申请,之前的登录态不应该还保留着。
建议你卸载后重新装一次,当成一个全新用户去走一遍流程,看看有没有“残留记忆”的情况。
四、升级测试,数据保留是核心
升级分两种方式,增量升级是只下载新旧版本之间的差异部分,包体小、速度快;全量升级是重新下载完整安装包,覆盖安装。两种方式都需要测试。
升级过程中最核心的验证点就一个,用户的数据有没有丢。 登录状态、本地收藏、聊天记录、个人设置,这些在升级前后必须保持一致。
另外还有一个容易被遗漏的场景,版本回退测试。就是用户从新版本退回旧版本后,App是否还能正常使用,数据结构是否兼容。大多数教程不会告诉你的是,版本回退引发的数据库字段不兼容,是线上事故的高发区。
写在最后
安装、卸载、升级,看起来是最简单的测试场景,但它们决定了用户对产品的第一印象。
把这几个场景的用例跑扎实,比多测十个页面的按钮都管用。
我的做法是每次有新版本提测,先把安装升级这一套完整过一遍,确认地基没问题,再去看上层功能。建议你也试试这个顺序,今天就可以从首次安装的权限拒绝场景开始跑。
我每周一到周五都会分享软件测试相关的思考,感兴趣的小伙伴可以持续关注~
—END—
夜雨聆风