大话移动APP测试Android IOS应用测试指南-第四章 功能测试要点 笔记
1.分辨率测试:
安卓&ios,真机&模拟机
界面测试&功能测试
2.多系统测试:
安卓存在定制化系统
ios系统无法降级,可以查询是否有工具支持
注:ios系统升级,支持的新资源库,新资源库可能不兼容低版本的ios系统,导致结果低版本调用该库,应用将直接闪退
3.用户不同的使用习惯:
1)安卓权限问题:使用权限,为什么使用,某些权限是否会对用户造成困扰
权限设置文件AndroidMainifest.xml
扩展:AndroidMainifest.xml的查看
mac为例子:apk文件修改后缀名rar,解压可查看到AndroidMainifest.xml文件
AndroidMainifest.xml为二进制文件,可通过反编译工具
AXMLPrinter2.jar:https://blog.****.net/u013396632/article/details/78924349
1.下载AXMLPrinter2.jar
2.xml文件复制到AXMLPrinter2.jar目录
3.进入到AXMLPrinter2.jar所在目录,使用如下命令,得到的B.txt就是反编译后的文件,现在可以看懂了。
java -jar AXMLPrinter2.jar A.xml > B.txt
2)安卓硬件问题:摄像头、GPU、自带系统、按键、方向键、滚轮
3)安卓操作习惯:返回键、菜单键、home键、音量调整、待机、home长按、显示当前进程列表
考虑:与应用的交互、重启、
4)安卓数据的移动或清空:关注应用的大小,进程销毁
5)ios操作习惯:操作对生命周期的影响
6)ios越狱:常见问题-系统不稳定,应用之间发生冲突
1.输入法:安卓的输入法可能会导致应用奔溃
2.美化主题类的插件:应用皮肤、奔溃
3.垃圾插件/手机管理软件:管理软件强制关闭后台应用,用户无法使用SSO模式应用,死循环:从应用A跳到社交应用B选择账号。跳回A继续选择
总结:关注真正用户是怎么使用移动设备的。非仅仅是关注日常业务和眼前的自动化测试
4.网络的不稳定性:长连接Connection: keep-alive ;根据服务器设置的心跳时间,边界值测试
http1.1以后默认长连接
心跳机制 https://www.cnblogs.com/lwy19998273333/p/6078571.html
网络不稳定的三种情况(提高用户体验):网络不稳定,没有得到服务器的反馈;网络没有连接;企业服务器或第三方服务因未知原因出错
5.安装/卸载测试
安装方式:1.使用命令行方式adb 2.第三方软件安装:安卓应用部分数据在内存和sd卡的互相转移,数据转移之后保证正常使用;应用小体积应用后在线下载数据使用
安装成功后需要查看的:
1.不联网情况下是否能正常运行,会不会崩溃。
2.在线下载数据不完整,能否再次启动
3.是否支持断点续传
4.下载完成后,再次启动
5.安装成功后,检查版本号以及相关数据
6.升级测试
1)应用被升级的几个必要条件:旧版本与新版本的应用拥有相同的签名;相同包名;标识符区分,一般为版本号
2)增量升级:优点:用户不必下载一个完整的apk;缺点:“如果应用有多个版本,并且每个版本都有用户在使用,那么增量升级就会变得非常麻烦。虽然拆分的补丁容量很小,但是只能针对单一的旧版本应用。必须对发布的所有旧版本和新版本做差分。虽然补丁可以由脚本自动生成,但依然麻烦”;“如果一部分系统没有拿到内置应用的权限,那么就没办法进行增量升级”
3)内置应用升级:升级的部分资源文件可能没有权限升级,要注意每次升级之后应用是否与内置在系统中的文件匹配(如输入法.so文件)
7.并发测试:
多个应用同时启动,多个事件同时触发
1)弹出框提示:闹钟、低电量的提示。会让目前运行的应用暂停,需要关注应用是否能在暂停之后运行
2)另一个应用启动:比如正在使用一个应用,此时有一个来电
特殊状态:
(1)应用正在播放视频
(2)应用正在向服务器发出或接受请求
(3)应用正在下载数据或升级
(4)用户正在进行输入
3)关机或待机:数据是否会丢失
4)功能冲突:最常见的音乐和语音功能的冲突,对正在运行的音频。。先暂停,暂停的应用是否能正常工作
5)可存储设备:把智能机当作移动存储设备,获取资源(如图片、音乐),容易导致应用的崩溃
8.数据来源
网盘、直接输入、选择软件提供的选项、复制粘贴。。
9.推送
1)关机、待机、打开等状态下执行的推送功能、消息显示以及推送跳转是否正确
2)应用在打开、未打开状态,启动在后台运行,推送功能、消息显示以及推送跳转是否正确
3)安卓与ios推送机制不同,需要关注多次推送以及推送的成功率
4)主动推送、被动触发推送、回调推送
5)推送消息阅读后的数量是否变化
6)单条、多条的推送文字和跳转
7)多语言系统环境下,推送的本地化翻译信息是否正确
10.分享跳转
应用间分享、应用内分享
1)安卓和ios两个平台的分享功能
2)如果分享之后的文案有动态变化,需要关注
3)分享到微博、微信。。后、关注消息的来源和跳转。