APP测试要点提取与分析
一、功能测试
- APP是什么项目?核心业务功能梳理清楚 — 流程图分析
- APP客户端的单个功能模块 — 细化分析
- 需要使用等价类,边界值,考虑正常和异常情况(长度,数据类型,必填,重复,隐形需求)
- 依据功能业务逻辑考虑功能交互
功能测试点提取与用例设计方法都跟web测试一致,但是APP有一些自己的特性测试,也要额外考虑到测试点中
1.1 安装与卸载
- 软件安装前:
- 空间不足时,是否有相应提示 – 异常
- 软件安装中:
- 安装过程中是否可以取消,再次安装成功 – 僵尸程序
- 安装是否可以正常运行
- 软件安装后: – 运行
- 是否可以卸载应用:1)通过桌面卸载 2)通过软件设置卸载 – 重新安装
常见bug,发现在IOS手机上有个应用安装时未完全安装,终止安装后,未完成安装的应用图标一直显示在手机上,并且无法成功删除 – 僵尸程序 - 安装完是否自动删除安装包 — Android
- 卸载之后,重新安装
- 是否可以卸载应用:1)通过桌面卸载 2)通过软件设置卸载 – 重新安装
- 重复安装:
- 提示版本已存在
- 直接覆盖安装,但是能正常使用 – 正常
1.2 软件更新升级
- 升级之前
- 当客户端有新版本时,是否有更新提示
- 升级之后
- 更新后各个功能(新/老功能)是否能正常使用;
- 更新后老数据存在并正常 – 新旧版本兼容性;
- 非强制升级版
- 用户可以取消更新,老版本正常使用,下次启动app时候,依旧可以出现更新提示
- 强制升级版
- 用户没有做更新时,退出客户端,下次启动app时,仍出现强制升级提示
- 在线跨版本升级
- 升级后正常使用
- 选择的版本 — 用户使用量最多的版本 – 主流版本
问题:
- 新功能正常使用
- 旧功能ok
- 旧数据不会丢失
- 跨版本 – 主流
1.3 登陆测试
- 登录方式
- 用户名,短信验证码,指纹,二维码,手势,语音,头像识别,第三方登录(微信,QQ,微博),一键登录
- 未登录方式
- 一些页面的操作,是否有有效控制,点击某资源时,提示需要先进行登录
- 用户主动退出登录后,下次启动APP时,应该进入登录界面 – 参考成熟产品
- 切换账号登录:检验登录的信息是否做到及时更新、用户越权安全问题
- 登录控制:通过功能限制只能在单个客户端或者指定个数的客户端进行登录操作
- 不允许多点登录时,是否将原用户踢下线,且能够给出提示信息
- 允许多点登录时,提示信息;且确保数据库操作无误,每个端可以及时看到数据的更新
- 用户登录持续时间太久,账号信息会过期
- 出现”虽然是登录状态,系统会提示用户没有登录“
- 强制退出,并提示:账户信息过期,请重新登录
- 单点登录(SSO)
一个系统登录了账号,在跳转到别的页面就不用再登录了, – 系统内信息可以互通
1.4 手机行为测试
触屏及操作测试 – 可以不支持,但不能有异常
- 触屏快捷手势:两指,三指,五指
- 长按,短按屏幕
- 手机横屏,竖屏检测 – 切换,APP兼容性,闪退,可以支持,出现问题
- 同时触摸不同地方,同时进行不同操作 – 随机性测试,monkey
查看客户端的处理情况,是否会crash,ANR(无响应),
注意:需要与开发和产品确认是否支持!
1.5 消息推送
- 开关设置
- 默认状态全部打开,客户端可以接受推送消息
- 设置开关可以打开,关闭;app设置关闭时,client不会接收消息推送
- 手机客户端未锁屏时
- app应用后台运行,消息推送是否可以正常接收,且可以点击查看
- app应用前台使用,可以收到消息提醒,且点击查看
- 手机客户端锁屏时,消息推送是否正常接收
- 登录状态:
- 退出登陆后,是否接收push消息,根据需求确定
- 重新登录用户,批量接收多条消息推送
- 切换用户时,推送消息是否符合当前登录用户
- 消息栏(通知中心)是否可以接收到消息提醒,且点击可查看,点击后消息栏中消失
二、UI 界面测试
- 确保产品UI符合产品经理指定的原型图与UI实际效果图一致
- 依据经验,用户使用习惯,参看其他成熟的产品,界面可优化的bug
- 一般涉及界面布局,风格,文字是否正确,页面是否美观,操作是否友好
UI界面测试和web思路一致
三、兼容性测试
- app是否在不同操作系统正常使用,一般Android和IOS是两个不同的app,但功能类似
- 每个平台的不同系统版本 – 系统更新后,需要做回归测试
- 是否适配各种屏幕尺寸 – 与开发确认是否支持pad
- 选择手机品牌,市场占有率高
- 分辨率适配,保证主流分辨率下页面显示完整,文字不被遮挡
- 特定用户指定要求
总结
-
app兼容性测试一般覆盖,Android系统手机,选取市面上主流手机即可,例如:小米,vivo,oppo等
ios系统就是 x xs 11 11plus -
公司里有哪些测试手机,申请设备
-
云测平台
四、安全性测试
五、中断测试
- app被手机行为打扰的情况,观察手机能否正常处理,保证数据正确性,
- 主要对核心功能存在实时数据交换的页面进行中断测试,除了确保中断过程中有合理的处理,还需要确保中断过后,恢复正常
- 来电,来短信,锁屏解锁,断网重连,断电,低电量提醒,前台后台切换,app切换
- 手机端硬件上,如,插拔数据线,耳机,闹铃弹出框提示等操作
- 常见bug场景
- 爱奇艺视频播放过程中,微信通话/电话中断:
- 正常,app暂停状态,通话接收后,恢复直播正常
- 异常 ,app卡死,音视频不同步
- 微信视频聊天,低电量提醒中断
- 正常,聊天不中断,关掉提示信息后,正常通讯
- 异常,app卡死,崩溃,微信聊天被强行断开,bug
- 爱奇艺视频播放过程中,微信通话/电话中断:
六、网络测试
- 测试3G,4G,5G,wifi,热点,网络切换 – 用户场景
- 例如,从wifi环境切换到4G环境,提示是否启动4G网络,会产生扣费,是否有提醒
- 测试有网,无网切换下应用的运行
- 网络连接 -> 网络断开 -> 网络连接,数据是否可以自动恢复,正常加载
- 无网络情况,各种提示是否友好,数据本地化是否正确
- 弱网测试(工具模拟 延时+丢包),关注弱网情况下是否有合理提示,且是否有重发机制
- 提交数据是否一直处理提交中,是否会有延迟,数据交换失败是否会有提醒;
- 数据多次提交(支付类app),是否只能被执行一次
- 最大尝试次数,app是否正常工作
- APP离线测试
Q:为什么要进行弱网测试,弱网测试关注点有哪些?用什么工具模拟弱网?
A:贴近用户真实使用环境,fiddler,charles