本章来分享APP测试的内容。
APP测试跟Web测试有相通之处,相关的测试策略、方法及思路等都可以运用到APP测试中。
但是由于运行在不同的硬件设备上,使得APP测试又变得那么的独特。
APP测试与传统测试的区别
1、用户关注点
- 传统web测试:屏幕大,可以同时非常多的显示信息
- 移动
APP
:屏幕小,显示信息有限,有价值信息放在主要位置
2、场合复杂程度
-
传统web测试:地点、网络信号固定
-
移动
APP
:运动形态中;网络不稳定,电量问题
3、输入种类
- 传统web测试:键盘、鼠标
- 移动
APP
:实体键盘、触屏、电容笔、语音
4、操作准度
-
传统web测试:点击是一件准确的事情
-
移动
APP
:触屏的操作准度比较差,点击误差大,不支持hover事件,点击出错几率高
5、界面布局
-
传统web测试:PC端屏幕宽大,布局可以灵活
-
移动
APP
:屏幕相对窄小,一般是单列,屏幕可以旋转
APP的专项测试
由于APP测试自身的特殊性,所以引申出其独有的专项测试。
1、安装测试
- 软件在不同操作系统下安装是否正常
- 软件安装后的是否能够正常运行,安装后的文件夹及文件是否写到了指定的目录中
- 软件安装各个选项的组合是否符合概要设计说明
- 软件安装向导的 UI 测试
- 软件安装过程是否可以取消,点击取消后,写入的文件是否如概要设计说明处理
- 软件安装过程中意外情况的处理是否符合需求(如死机,重启,断电)
- 安装空间不足时,是否有相应提示,特别要考虑特殊极限情况
- 对于需要通过网络验证之类的安装,在断网情况下尝试一下
- 还需要对安装手册进行测试,依照安装手册是否能顺利安装
- 二次安装
- 浏览器下载apk包安装,如将apk包放到蒲公英上
2、卸载测试
- 直接删除安装文件夹卸载是否有提示信息
- 测试系统直接卸载程序是否有提示信息
- 卸载过程中出现的意外情况的测试(如死机、断电、重启)
- 卸载是否支持取消功能,单击取消后软件卸载的情况
- 系统直接卸载UI测试,是否有卸载状态进度条提示
3、UI 测试
3.1 导航测试
- 按钮、对话框、列表和窗口等,或在不同的连接页面之间需要导航
- 是否易于导航,导航是否直观
- 是否需要搜索引擎
- 导航与页面结构、菜单、连接页面的风格是否一致
3.2 图形测试
- 横向比较,各控件操作方式统一
- 自适应界面设计,内容根据窗口大小自适应;横竖屏及分屏显示
- 页面标签风格是否统一
- 页面是否美观
- 页面的图片应有其实际意义而要求整体有序美观
- 图片质量要高,且图片尺寸在设计符合要求的情况下应尽量小;主要考虑的是加载速度和使用的流量
- 界面整体使用的颜色不宜过多
3.3 内容测试
- 输入框说明文字的内容与系统功能是否一致
- 文字长度是否加以限制
- 文字内容是否表意不明
- 是否有错别字,敏感词
- 是否有敏感性图片,如:涉及版权、专利、隐私等图片
4、功能测试
4.1 运行
- APP安装完成后的试运行,可正常打开软件
- APP打开测试,是否有加载状态进度提示
- APP打开速度测试,速度是否可观
- APP页面间的切换是否流畅,逻辑是否正确
4.2 更新升级
- 当客户端有新版本时,有更新提示
- 当版本为非强制升级版时,用户可以取消更新,老版本能正常使用。用户在下次启动APP时,仍能出现更新提示
- 当版本为强制升级版时,当给出强制更新后用户没有做更新时,退出客户端。下次启动APP时,仍出现强制升级提示;此类情况主要出现在游戏类的APP以及跨多级版本的APP升级
- 当客户端有新版本时,在本地不删除客户端的情况下,直接更新检查是否能正常更新
- 当客户端有新版本时,在本地删除客户端的情况下,检查更新后的客户端功能是否是新版本
- 当客户端有新版本时,在本地不删除客户端的情况下,检查资源同名文件如图片是否能正常更新成最新版本
4.3 交叉事件测试
多个APP同时运行是否影响正常功能
APP运行时前后台切换是否影响正常功能
APP运行时拨打/接听电话
APP运行时发送/接收信息
APP运行时发送/收取邮件
APP运行时切换网络(2G、3G、4G、5G、wifi);可以使用Fiddler限制网速
APP运行时浏览网页
APP运行时使用蓝牙传送/接收数据
APP运行时使用相机、计算器等手机自带设备
5、兼容性测试
- 系统:Android,iOS
- 系统版本:Android的不同版本,iOS的不同版本
- 手机机型
- 手机分辨率
- 网络:2G、3G、4G、5G、wifi
获取兼容性统计信息的渠道:
- 官方渠道:
- 埋点:推荐阅读
6、用户体验测试
以主观的普通消费者的角度去感知产品或服务的舒适、有用、易用、友好亲切程度。 通过不同个体、独立空间和非经验的统计复用方式去有效评价产品的体验特性提出修改意见提升产品的潜在客户满意度。
- 是否有空数据界面设计,引导用户去执行操作
- 是否滥用用户引导
- 是否有不可点击的效果,如:按钮此时处于不可用状态,可以置灰,或者隐藏按钮,否则会给用户误导
- 菜单层次是否太深
- 交互流程分支是否太多
- 界面中按钮可点击范围是否适中
- 标签页是否跟内容没有从属关系,当切换标签的时候,内容跟着切换
- 是否定义返回的逻辑。涉及软硬件交互时,返回键应具体定义
- 是否有横屏模式的设计,应用一般需要支持横屏模式,即自适应设计
7、硬件环境测试
7.1 手势操作测试
- 手机开锁屏对运行中的APP的影响
- 切换网络对运行中的APP的影响
- 运行中的APP前后台切换的影响
- 多个运行中的APP的切换
- APP运行时关机
- APP运行时重启系统
- APP运行时充电
- APP运行时结束进程再打开
7.2 网络环境测试
手机的网络目前主要分为3G、4G、5G及wifi。目前3G的网络相对于比较慢,测试时尤其要注意此块的测试。
- 无网络时,执行需要网络的操作,给予友好提示
- 在网络信号不好时,检查功能状态是否正常,确保不因提交数据失败而造成数据丢失
- 在网络信号不好时,检查数据是否会一直处于提交中的状态,有无超时限制。如遇数据交换失败时要给予提示
- 在网络信号不好时,执行操作后,在回调没有完成的情况下,退出本页面或者执行其他操作的情况,有无异常情况
以上就是本篇文章所要分享的内容,欢迎各位大牛指正。你的指正,能让我在测试之路上快速成长。
Leo Never Stop Fighting!