APP项目测试
APP发展及分类
APP通常指安装在手机上的软件,APP分为工具类、社交类、生活服务类、休闲娱乐类和行业应用类
APP测试流程
1、计划阶段
2、设计阶段
3、执行阶段
4、评估报告阶段
APP测试方法
首先是Android与IOS的区别
1、Android是Google开发、发行的一个智能的、开放式的软件平台。内核是
Linux,其应用程序都是用Java编写的。由于Android的运行机制采用虚拟
机,系统需要占用大量内存来换取执行速度,再加上不定期的内存自动回
收机制,从而导致出现卡顿现象
2、IOS是苹果公司开发的封闭式手机操作系统。它指定适合用一种开发语
言——Objective-C语言。它的运行机制采用沙盒运行,整个运行过程中
不需要虚拟机,所以相比Android其执行效率要高一点
UI测试
(1)首先确保UI界面设计符合国家的、行业的、企业的标准规范;
(2)关注窗口、菜单、对话框以及按钮控件的布局、风格要满足用户要求;
(3)不同页面的控件大小、风格是否一致;
(4)文字的提示是否友好,是否存在敏感词、容易引起歧义的词等;
(5)操作是否简单、人性化,是否有向导指引;
(6)内容是否根据窗口的大小自适应调整;
功能测试
验证各个功能是否与需求实现一致
安装卸载
• 在不同的操作系统下验证安装卸载是否正常,如Android 、IOS、Symbian等;
• 安装卸载过程中出现异常,如重启、死机、断电、断网等,是否能正确处理;
• 安装过程中是否可以取消;
• 安装过程中空间不足是否有相应提示;
• 安装文件是否安装到指定的目录里,卸载后所有文件及文件夹是否全部删除;
• 是否可以卸载应用;
• 卸载后是否可以重新安装,安装后数据是否同步,功能是否正常;
注册登录
• 注册时要考虑用户名和密码的长度、格式是否有限制或规则要求等
• 重名注册是否有提示信息
• 注册成功后,用户是否可以正常登录
• 软件是否有快捷登录,如手机号码、获取验证码之间进行登录
• 是否支持第三方账号登录,如QQ、微信、微博等账号
• 登录时密码输入错误次数有没有限制
• 登录时网络中断是否有友好提示
• APP是否实现免登录功能、当用户主动退出后,下次启动APP
升级更新
• 当APP有新版本时,是否有更新提示信息
• 当版本为非强制升级更新时,不更新是否可以正常使用
• 当用户取消更新退出后,下次启动APP,是否仍然有提示更新信息
• 设置APP软件自动升级更新时,在无wifi的情况下,是否自动更新
• 当版本为强制升级更新时,不更新是否可以正常使用
• 升级更新后功能是否正常使用,数据是否会同步
异常测试
• 电量测试,如电量极低时,验证APP功能是否正常
• 低电量提示时,验证APP功能是否正常
• 充拔电、插拔耳机、插拔数据线时,验证APP功能是否正常
• 弱网测试,模拟2G\3G\4G\wifi时,验证APP功能是否正常
• 无网络时,各种提示信息是否友好,数据本地化是否正确
• 模拟网络2G\3G\4G\wifi之间的切换,验证APP功能是否正常
安全测试
• 安装包安全性
• 首先验证安装包是否对签名进行了校验,以防止被恶意第三方应用覆盖安装等
• 开发人员是否对源代码进行混淆,以免被反编译软件查看源代码
• 用户隐私,特别是访问通讯录,需要对特定权限进行检查
• 用户安全性
• 免登录是否设置了过期时间
• 用户密码在传输中是否进行了加密,在数据库中存储是否进行了加密
• 数据安全性
• 用户的敏感数据是否写到日志或配置文件中
• 在含有敏感数据的连接中是否使用了安全通信,如https
• 服务端安全性
• 与Web端类似,主要考虑SQL注入、XSS
兼容性测试
• app是否可以在不同的操作系统上正常使用,如果开发有Android和iOS两个平台的版
本,那么在这两个平台都要做兼容测试
• app能否适配各种屏幕尺寸
• 分辨率不同,界面图标,文字大小会有不同。应保证主流分辨率下图标展示完整,
文字内容没有遮挡
APP测试与Web测试的区别
• 系统构架不同
• 测试方法不同
• 功能测试:Web不支持离线浏览,但是有的APP支持
• 性能测试:Web主要关注服务器性能,APP除了服务器,还要考虑手机端的性能
• 兼容性测试:Web主要考虑浏览器的兼容性,APP还要考虑 不同设备、不同系统、不
同系统版本、不同分辨率等
• 专项测试:APP中多了一些专项测试,比如电量测试、弱网测试、中断测试等
• 测试工具不同
• app一般使用monkey、appium、fiddle等
• web一般使用qtp、loadrunner、selenium