文 | Vicky
采编|Emily
浅谈App测试(上)~带音频
一、功能测试
二、性能测试
(1)耗电量
影响因素:定位、传感器、蓝牙,其中CPU、持续定位是两个平台造成耗电的主要因素。
(2)流量
也就是常说的耗流量,影响因素有重复请求,重复下载,大图。
(3)内存
跟性能相关的概念有内存泄漏、内存占用峰值,其中通常造成性能体验问题的是内存泄漏,会导致用户手机可用内存越来越少,app越来越卡。
Xcode中有一个 Allocations工具,可以跟踪由应用程序分配的对象内存。可以用来在疑似内存泄露的地方,通过反复操作,查看某些对象内存是否有被正常的释放,从而得知是否发生内存泄露,针对性进行分析和优化。
(4)卡顿
FPS意思是每秒传输帧数,也就是我们常说的"刷新率"。每秒钟帧数愈多,所显示的画面就会愈流畅,FPS值越低就越卡顿,一般我们的APP的FPS只要保持在 50-60之间,是比较流畅的。
影响因素:通常有UI布局不合理,过度绘制;主线程执行耗时操作耗CPU;内存不足,有占用GPU较长的函数。
(5)启动时间
APP的启动时间,直接影响用户对你的APP的第一体验和判断。如果启动时间过长,不单单体验直线下降,而且可能会激发苹果的watch dog机制kill掉你的APP,那就悲剧了。
一般是分析app的启动过程,查看耗时的环节进行分析。可能是在启动的时候加载的配置太多,或者是需要拉取的接口太多,具体情况。
(6)安装包大小
(1)资源优化。删除冗余资源,资源文件最少化等。
(2)图片优化。格式的图片做压缩处理
(3)插件化。比如功能模块放在服务器上,按需下载,可以减少安装包大小。
(7)稳定性
7*24小时跑monkey, 一般是通过自动化的方式跑7*24小时,看程序会不会崩溃
三、兼容性测试
从不同系统,版本,分辨率,机型(不同厂家ROM)维度进行适配测试
(1)尽量覆盖该产品的主要用户,一般采取APP内部埋点的方法统计用户机型分布,取top10来覆盖。
(2)关注各功能界面在不同分辨率下是否存在UI展示问题比如出现错位,遮挡,留白,拉伸和模糊等问题。
(3)通常选择在少数主流设备上执行所有用例,在其他兼容性范围内的设备上覆盖主要功能的测试用例;
四、异常测试
1.接口异常,比如接口超时、接口返回值与约定不一致,App需要做异常兼容处理
2.内存不足,app能否正常响应;
3.反复操作:反复操作某个功能(一般是比较重要的功能),不断点击和刷新,是否会出现闪退
4.系统中断,像电话、短信在app运行过程中被中断了,结束后是否可以正常运行;
5.弱网:wifi、4G/3G/2G、wifi与数据流量的切换
新书速递
吴老的java版《selenium webdriver3 实战宝典》和python版《selenium Webdriver 3.0 自动化测试框架实战指南》出版了,代码拿来就能用。
测试资源
40G测试开发课程视频资源免费提供,请联系吴老师微信wulaoshi1978
微信公众号:光荣之路(ID: GloryRoadTrain)
招聘QQ群:203715128