手机测试已经做了很多年了,今天来总结下各个测试要点,及测试方法。客户端测试包括以下几个方面:
1. Android手机内存泄露问题
1) 在各种activity 界面旋转手机,来回切换横屏和竖屏数次。因为系统对activity 再创建时,如果涉及到引用被保存到别处,系统不能对它进行垃圾回收,从而引发泄露。
2) 在不同的activity states 之间来回切换。如:点击Home键,再切回app
3) Monkey test。
2. 网络问题
1)分别验证2G/3G、Wifi网络下app的运行情况。(如:使用了同步网络请求,网络不佳时导致线程阻塞、app将不响应任何用户事件。所以主线程中尽量使用异步网络请求。 )
2)无网络时,执行需要网络的操作,需给予提示。
3) 网络状态不佳时,提交数据是否有超时处理。
4)网络状态不佳时,提交数据失败的处理。
5)网络状态不佳时,执行操作后,在回调没有完成时,退出本页面的处理。
3. 前后台切换
1)app->Home->app 检查是否停留在上一次操作的界面。
2)app->Home->app 检查程序状态是否正常。
3)app->Home(data update)->app 检查当切换过程中数据有更新的情况。
4)app->Lockscreen->Unlockscren 检查锁屏解锁后的状态。
5)app-> call ->app app 检查运行时被电话打断的情况。
6)Kill app 检查杀掉app后再重新打开app。
7) dialog ->Home ->dialog 检查出现提示框的时候,切换到后台,再切换回来看是否还存在
4. 流量控制
1)确定哪些页面需要自动刷新及刷新间隔、哪些页面手动刷新。
2)确定哪些页面从后台切回前台时需要更新数据。
3)确定数据的处理逻辑,是每次都请求服务器,还是缓存到本地。
4)对于己下载的图片、再次访问时直接存取本地数据。
5. 登录问题
1)当有免登录功能时,无网络时是否能正常进入免登录状态。(图书类软件)
2)切换帐号后,用户登录信息及数据是否更新。
3)是否支持多端同时登录。
4)密码更换后,有数据交换时是否进行了身份校验。
5)自动登录功能。
6)用户注销或主动退出登录后,下次不应再自动登录。
7)用户密码等隐私数据,需要加密处理。
6. push 消息
1)检查app处于关闭状态、前台工作状态、后台运行状态下push消息。
2)用户在勿扰模式时,不接收push。
3)本机登录过多个账户时,只有最后登录的账户接收push消息。
4)在设置->通知处关掉push功能时,不接收push。
7. 自动更新
1)通过抓包更改服务器新版本号,来验证当有新版本时,是否能正常弹出提示。
2)升级时ios是否能正常跳转到appstore,android是否能直接升级。
3)升级后原版本的数据是否正常保留。
4)用户取消本次升级时,下次提示升级的策略。
5)当版本为强制升级版时,功能是否正常。
8. 兼容性
1) iPhone4/4S 及 iPhone5/5S 分辨率不同检查资源文件是否有2套图对应。
2)对支持的IOS主流版本进行验证。
3)当手机端业务与PC端业务有关联时,PC端特有功能需要做相应的容错处理。
4)对于可以输入内容的部分,分别使用系统输入法及第三方输入法进行验证。
5)对于需要链接跳转的部分,分别使用系统浏览器及第三方浏览器进行验证。
9. UI
1)字体、颜色、文字超长处理(...)、模糊。
2) 特殊字符显示正常, 如<>不会显示成<>。
10. 易用性
1)控件的点击区域过小(需要处理点击控件边缘处的处理)
2)当有数据更新操作时,必须有超时处理。
11. 健壮性
1)快速点击同一按键或同时点击两个按键。
2)多线程处理,多线程同时操作一个数据库,反复多次尝试。