学习笔记 如何保证APP兼容性覆盖测试和手机APP测试如何进行兼容性测试?

1.背景
众所周知,APP兼容性覆盖测试一直以来被认为是一个高成本、耗时低效、耗人力的测试工作,且兼容性测试是一项必须要进行的测试项目,因为有不同的机型、系统平台、分辨率、网络、厂商、数据兼容以及不同兼容问题场景需要进行覆盖 。本文章将通过本人测试经验围绕质量和测试效率进行阐述如何保证APP兼容测试覆盖,期望有更多童鞋在既能保证兼容质量的同时、又能高效地完成兼容性测试覆盖 。
2.认识APP兼容测试 2.1 什么是兼容测试
兼容性测试将验证软件与其所依赖的环境的依赖程度,包括对硬件平台的依赖和对软件平台依赖程度,即我们通常说的软件的可移植性。
简单来说:
2.2 什么是APP兼容测试
APP兼容测试即是移动端的手机客户端兼容测试 。移动终端的碎片化特征使APP测试者为了保障不同系统及版本、不同网络制式、不同分辨率和厂商(不同深度定制的ROM)、不同版本都能够有很好的用户体验而面临巨大挑战,所以APP兼容性测试也是测试质量保障任务中的重要环节 。
3.兼容测试维度覆盖保证兼容测试质量
APP兼容测试具备测试点多,碎片化严重的特征,兼容测试一旦存在漏测,质量未得到保障就会导致线上用户的流失 。
所以在移动开发中兼容性测试常常需要涉及到系统、厂商ROM、屏幕分辨率、网络、等其他众多维度 。下面将详细展开介绍兼容测试需要覆盖的各个维度 。
3.1系统兼容
app系统兼容涉及和Ios系统,其中系统又分了不同的系统版本,Ios又分不同的系统版本 。不同的系统、不同的系统版本都有不同的特征,不同的API,意味着都有可能产生各种各样的兼容问题,所以需要进行兼容覆盖 。
其中系统具体分布及市场占有率如下表所示:

学习笔记  如何保证APP兼容性覆盖测试和手机APP测试如何进行兼容性测试?

文章插图
image
从表中数据可以得出,.4以下市场占有率不到8%,份额小且适配难度高,越来越多的开发者选择了放弃对旧版本的支持,如果目前项目APP的开发者已不支持旧版本兼容尤其是.3之前的,那么测试也可以选择放弃对该类型版本的兼容 。
其中Ios不同的系统版本具体分布及市场占有率如下:
学习笔记  如何保证APP兼容性覆盖测试和手机APP测试如何进行兼容性测试?

文章插图
image
从表中数据可以得出,Ios8.X以下市场占有率不到2%,可以选择放弃8.X以下版本的兼容,重点覆盖8.X,11.X,10.X,9.X系统的覆盖 。
3.2厂商兼容
和Ios都有不同的手机设备,苹果几乎每年会进行一次换代,目前换代到 X。相比而言,系统源码是开放的,只要遵从相应的协议,就可以对源码进行修改,国内各个厂商就把基于源码改造成自己对外发布的系统,比如我们熟悉的小米手机 Miui 系统、华为手机 EMUI 系统、Oppo 手机系统等(只有谷歌Nexus和Pixel系列才是原生系统,但是目前国内很少人用 。)由于每个厂商都修改过原生系统源码,这里面就会引发一个问题,那就是著名的 碎片化问题,本质就是不同系统的应用兼容性不同,哪怕是搭载完全相同的硬件,不同品牌的手机在运行速度、软件兼容上都会有区别的 。
学习笔记  如何保证APP兼容性覆盖测试和手机APP测试如何进行兼容性测试?

文章插图
image
3.3屏幕分辨率兼容
在不同分辨率、尺寸的设备上,很容易出现字体异常、UI样式异常、换行错位等UI问题,所以需要测试程序在不同尺寸和不同的分辨率下能否正常显示
目前市面上主流的分辨率为:、2560*1440、等等,主流的尺寸是5.5,5.0和4.7 。
学习笔记  如何保证APP兼容性覆盖测试和手机APP测试如何进行兼容性测试?