今日关键词:回归测试
移动端项目测试
APP发展 APP:application通常指安装在智能手机上的软件
app移动应用的分类 工具类 社交类 生活服务类 休闲娱乐类 行业应用类
APP测试流程 测试计划阶段 测试设计和开发阶段 测试实施阶段 测试评估阶段 所有类型的软件测试流程都是相同的
app测试方法 android与ios
ui测试(用户界面测试): 首先确保ui界面设计符合国家的、行业的、企业的标准规范 关注窗口、菜单、对话框以及按钮控件的布局、风格要满足用户要求 不同页面的控件大小、风格是否一致 文字的提示是否友好,是否存在敏感词、容易引起歧义的词等 操作是否简单、人性化,是否有向导指引 内容是否根据窗口的大小自适应调整
功能测试:验证各个功能是否和需求实现一致
安装卸载测试: 在不同的操作系统下验证安装卸载是否正常(Android、ios,symbian等) 安装卸载过程中出现异常,如重启、司机、断电、断网等,是否能正确处理 安装过程中是否可以取消 安装过程中空间不足是否有相应提示 安装文件是否安装在指定的目录里,卸载后所有文件及文件夹是否全部删除 是否可以卸载应用 卸载后是否可以重新安装,安装后数据是否同步,功能是否正常
启动运行测试: 安装后启动软件,测试功能是否可以正常运行 首次打开软件是否有访问提示,如允许访问通讯录、获取地理位置等 首次启动运行时速度是否满足要求,页面之间切换是否流畅
注册登录测试: 注册时要考虑用户名和密码的长度、格式是否有限制或规则要求等(容易遗漏:pc端和手机端限制是否一致) 重新注册是否有提示信息 注册成功后,用户是否可以正常登录(各平台登录账号是否互斥) 软件是否有快捷登录,如手机号码、获取验证码之间进行登录 是否支持第三方账号登,如QQ、微信、微博等账号 登录时密码输入错误次数有没有限制 登录时网络中断是否有友好提示(使用时同) APP是否实现免登录功能(7天自动登录等)、当用户主动退出后,下次启动app应切换到登录页面
前后台切换测试(只针对Android系统): app切换到后台,再次返回app时,是否停留在上一次操作的界面 app切换到后台,再次返回到app时,功能是否正常,数据是否更新。 手机锁屏后,再解锁进入app,应用是否会崩溃,功能是否正常,数据是否更新 出现提示信息后,切换到后台,再次返回app,检查提示信息是否存在 多个app软件之间切换,功能是否正常,数据是否更新 使用app时,与手机功能的交互测试,如来电话、收短信、闹钟等
升级更新测试: 当有app新版本时,是否有更新提示信息 当版本为非强制升级更新时,不更新是否可以正常使用 当用户取消更新退出后,下次启动app,是否仍然有提示更新信息 设置app软件自动升级更新时,在无wifi的情况下,是否自动更新 当版本为强制升级更新时,不更新是否可以正常使用 升级更新后功能是否正常使用,数据是否会同步
消息推送测试: 默认开关应该是全打开状态 消息开关可以自由设置打开关闭状态,设置开关关闭时,客户端接收不到消息推送 未锁屏时,app在后台运行,消息推送是否可以正常接受 手机消息栏是否可以接受到消息提醒,且可以点击查看,点击后在消息栏消失 当推送消息是针对登录用户的时候,需要检查收到的推送与用户身份是否相符 推送消息是否能有针对性的推送,如相应内容推送给相应用户(精准推送) 退出登录后,是否接受推送消息 用户在免打扰模式下能否接受推送消息
异常测试: 电量测试,如电量极低时,验证app功能是否正常 低电量提示时,验证app功能是否正常 冲拔电、插拔耳机、插拔数据线时,验证app功能是否正常 弱网测试,模拟2G/3G/4G/WIFI时,验证app功能是否正常(需要借用工具) 无网络时,各种提示信息是否友好,数据本地化是否正确 模拟网络2G/3G/4G/WIFI之间的切换,验证app功能是否正常 离线测试,检查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
确定设备和平台再动手: 了解移动app的平台及所带有的功能设计 了解移动app的生命周期,面向的用户是什么群体
关注多任务和意外情况处理: app在使用过程中用户接听到一个来电,app应该如何处理 不同app之间的切换,打开app的速度是否会变慢,以及切换时的动画是否出现卡顿
避免手势冲突: 避免使用移动平台的手势操作(特殊手势) 如果使用移动平台的手势,在平台手势更新时也要记得更新
关注用户体验: 横竖屏幕测试(通知测试) webview测试(网页嵌套) 规范和习惯 关注用户(及残障人士)体验 其他需要关注的用户体验的小细节,如,不同颜色的背景下,状态栏的显示是否正常
设计通知和消息展示: 测试app在安装时是否明确声明用户在使用app时需要用到的权限 测试app在使用的过程中是否有合适的通知和消息显示 测试app在后台运行的时候是否有合适的消息和通知显示
及时显示和同步消息: 如果用户使用的是我们的即时通信app,某天登录突然收到了朋友在几个月之前发来的一条消息,那用户会有什么样的反应呢? 哪些app对消息的及时性要求很高 考虑到app中各种缓存对于消息显示的影响,app的缓存机制:内存》文件》网络的结构
确保成功集成和调用第三方app
其他移动端测试:
M端(移动web端)测试: 网络种类多(2G/3G/4G/WIFI) 间断问题:来电话、短信、通知、断电、锁屏) 屏幕的限制: 图片文字是否正常 一起显示效果如何 按钮、选择框是否容易点击,点击是否准确
手势的测试:左滑右滑等 web和移动端的同步
微信小程序测试: 功能测试 功能性测试: 操作系统兼容性 屏幕兼容性 微信版本兼容性 网络测试、接口测试、易用性测试、性能 交易:验证各种交易场景 缓存:比如需要验证清空微信的缓存是否对小程序有影响 消息机制 权限:已授权/未授权 ?
|