一、功能测试
1、根据需求文档编写测试用例,执行测试,app客户端的单个功能,需要使用等价类、边界值,考虑正常和异常场景。
2、根据功能业务逻辑考虑功能交互。
注意:功能的测试点提取和用例设计方法都跟web测试一致,但是app有一些自己的特性测试,也要额外的加到测试点中。
二、安装与卸载测试
1、软件安装前:空间不足是否有相应的提示
2、软件安装中:安装过程中是否可以取消、暂停;安装是否可以正常进行;安装空间不足是否给予提示
3、软件安装后:是否可以卸载应用,通过桌面卸载或者通过软件设置卸载;卸载是否支持取消功能,取消后是否影响软件的正常卸载;安装完成后是否自动删除安装包;重复安装提示版本已存在、或者是直接覆盖安装,但是能正常使用。
常见的bug:发现ios手机上有个应用未完全安装,终止安装后,未完成安装的应用图标一直显示在手机上,并且无法成功删除。
三、app的升级测试
1、升级之前:当客户端有新版本时,是否有更新提示
2、升级之后:立即更新当前版本,正常升级,升级之后,新版本正常使用
3、非强制升级版本:用户可以取消更新,老版本能够正常使用,用户在下次启动app时,仍能出现更新提示
4、强制升级版本:用户不更新app,则无法使用此app;下次用户如果再次登录app,则仍然进行强制升级。强制升级后,新版本正常使用。--主要用于游戏app
5、在线跨版本升级:通过运营数据分析用户使用量最多的版本,没有则可以选择最近5-6个版本;升级之后,新版本正常使用
6、版本升级测试覆盖的范围有哪些——老功能 新需求;1)新需求,详细测试;2)保证老功能正常使用
四、APP登录测试
1、登陆方式:用户名密码、短信验证码、手势登录、人脸识别、指纹登录、第三方登录(QQ、微信、微博等)——根据需求来确定
2、未登录的用户:某些页面的操作,是否做了控制/点击某些资源,提示登录或者跳转到登录页面;用户主动退出登录后,下次启动app时,应该进入到app的登陆页面
3、切换账号登录:检验登录的信息是否做到及时更新
4、单个端登录:不允许多个端登录时,是否将原用户挤下线,并且给出提示信息
5、多个端登录:允许多个端登录时,提示信息,且数据库的操作准确无误,每个端可以及时看到数据的更新。
6、用户登录持续时间太久,账号信息会过期:强制退出,提示”账号信息已过期,请重新登录“或者跳转到登录界面
五、触屏及操作测试
1、触屏的快捷手势:两指、三指滑动
2、长按、短按屏幕效果
3、手机横屏、竖屏的测试
4、同时触摸不同的位置、同时进行不同的操作
六、APP离线测试
1、应用程序会在本地客户端缓存一部分数据以供程序下次调用,对于一些程序,离线状态下可以浏览本地已缓存的数据。
2、对于离线(无网络)时,刷新获取新数据时,页面能够给出友好的提示
3、离线下,退出app再次进入app能正常浏览本地缓存的数据
4、离线下,切换到主屏幕再切换到app应用时可以正常浏览
5、离线下,手机锁屏解锁后进入app应用时可以正常浏览
6、对于界面的数据不提供离线查看,需要给出相应的提示,且界面更新后无任何数据。
七、APP消息推送测试
1、开关设置:默认状态全部打开状态/安装后弹窗提醒选择,客户端可以接受到推送信息;设置开关可以打开、关闭;app设置开关关闭时,客户端接受不到消息推送
2、手机客户端未锁屏时:app应用后台运行,消息推送是否可以正常接受,且可以点击查看;主界面或者正在使用别的app,点击消息,跳转到app;应用前台使用,可以收到消息提醒,点击可以查看
3、手机客户端锁屏时:消息推送是否正常接受,提示音、亮屏、中间列表展示;点击消息推送,先解锁,解锁后跳转到app
4、登录状态:退出登录后,是否接受消息推送(根据需求来);未登录的用户再去登录,批量接受多条消息推送;当推送消息针对登录用户的时候,需要检查收到的推送消息与用户的身份是否相符,没有错误的将其他人的消息推送过来;手机通知栏是否可以接受到推送的消息,且点击后可查看,点击后,通知栏的消息消失。
八、UI界面测试
1、确保产品UI符合产品经理制定的原型图与UI设计效果图一致
2、依据经验、用户使用习惯、参考其他成熟的产品,界面可优化的bug
3、一般涉及界面(如菜单、对话框、窗口和其他可视控件)布局、风格,文字是否正确,页面是否美观,操作是否友好
4、安装app后的加载页动态视频显示,分享页面产品的logo显示
九、APP兼容性测试
1、应用是否可以在不同的操作系统上使用(Android和ios),每个系统还有不同的版本
2、应用是否能够适配各种屏幕尺寸、分辨率的适配,分辨率影响图标、文字大小、保证主流分辨率下页面显示完整,文字不被遮挡
3、总结:选取市面上主流的机型的进行兼容性测试
十、APP中断测试
1、app被手机行为打扰的情况:APP能否正常处理,保证数据的准确性
2、主要对于核心功能存在实时数据交换的页面去进行中断测试,除了确保终端过程中有合理的处理,还需确保中断恢复后,网络恢复正常
3、来电话、来短信、锁屏解锁、断网重连、断电、低电量、前后台切换,app切换
4、手机硬件上:待机、插拔数据线、耳机、闹铃弹出框提示等操作
常见bug场景:
1、视频播放过程中,微信通话/电话通过中断:
正常:app暂停状态,接听完电话之后,恢复直播正常
异常:APP卡死,音视频不同步
2、微信视频聊天,低电量提醒中断
正常:聊天不中断,关掉提示信息后,正常通讯
异常:APP卡死/崩溃,微信聊天被强制断开
十一、APP网络测试
1、测试2G/3G/4G/5G/WIFI网络的切换,从wifi环境切换到4G环境,提示是否启用4G网络,会产生扣费是否有提醒
2、测试有网/无网切换:有网到无网再到有网,数据是否可以自动恢复,正常加载;无网络时,各种提示信息是否友好
3、弱网测试(延时 丢包):关注弱网场景下超时是否有合理的提示,且是否有重发机制;提交数据是否一直处理提交中,是否会有延迟,数据交换失败是否会有提醒;数据多次提交(支付类app),是否只能被执行一次
十二、APP性能测试
1、响应能力测试(例如:loadrunner/jmeter工具)
app安装、卸载的响应时间
app各类功能性操作的响应时间(后台服务器的性能)
2、压力稳定性测试(例如:monkey)
app反复进行安装卸载
其他功能反复进行操作
3、app性能监控
cpu占用
内存占用
流量的消耗
电流的消耗
十三、安全性测试
1、安全性测试--权限测试,登录鉴权,界面敏感数据加密
2、扣费风险:包括发送短信、拨打电话、连接网络,没有网络时能否提醒===友好提示
3、隐私泄露风险:包括访问手机信息、访问联系人信息等
4、是否允许访问相册、拍照开放权限 不权限权限、是否允许录音、是否允许定位、是否允许接收通知推送
5、注意:默认情况下是开放的,需要提示用户选择! ➢一般对于大多数非支付类App来说,安全并不是一个特别大的问题,只需要保证登录鉴权的安全性即可。包括登录的sql注入测试(安全测试);敏感数据加密! 没有安全性测试要求,可以不用考虑(sql注入, 安全扫描等)