十年测试老鸟聊聊移动端兼容性测试
Posted TEST_二 黑
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十年测试老鸟聊聊移动端兼容性测试相关的知识,希望对你有一定的参考价值。
首先,我们来分析一下系统、分辨率、品牌对兼容性测试的影响:
系统
因为安卓系统各个版本操作系统的底层实现会发生改变,因此容易出现如果使用了这些底层细微差异的api,出现不一致的情况。
比如,各个不同操作系统的组件实现方式不同,导致属性不一样,布局方式的改变。也由于对于容器和容器的层实现不同,导致出现的问题。
这些问题,主要跟应用系统使用了特定的技术,出现差异有关。但是,某个应用使用了“边界差异“技术,预先是难以获知的,因此需要来通过操作系统覆盖来实现。
分辨率
分辨率对显示的影响很大。但是还有一个值,叫做“显示密度“。比如,两个屏幕的分辨率相同,但是一个是6.5寸屏幕,一个是4.5寸屏幕,如果显示密度相同,那么大屏上出来的字会很小,但是间隔很大,不好看,因此会内部设置显示密度。
如果分辨率和显示密度的配合不合理,就会出现某些应用的界面显示不全的问题,但是应用程序本身是无法发现的,因为局部界面显示在“虚拟“屏幕上,就是不出现在物理屏幕上。
此外,由于分辨率不同,自适应的应用程序也容易出现布局问题,特别是H5应用程序上面。
界面元素比较少的小程序,影响不会很大。但是对于界面元素比较“拥挤“的,也会产生兼容性问题。APP跟小程序类似。
品牌
品牌影响主要是:
-
字体
-
自定义UI的实现
先说字体。目前各个品牌的手机,都使用了自己的,或者特定的字体,如果想要修改字体,就需要root,这个就等于破坏了原有手机的显示设置,在这样前提下的兼容测试没有意义。字体就会有不同的间距,矢量点阵。
字体的变化,对于人工测试没有影响,但是对于使用自动化来做兼容测试,就影响很大。
自定义UI的实现,这个其实跟操作系统升级的影响是类似的。操作系统的升级,对应用程序的影响,包括UI从层面的,就体现在这里,可能比操作系统更重要;UI之外,对操作系统的兼容更重要。
影响因素说完了,下面我们来讲一下各种兼容性测试的比较。首先我们要排除手工来测试,那么就剩下通过程序来测试了。
测试种类
-
Monkey测试
-
自动遍历测试/深度遍历测试
-
测试用例的兼容测试
特点和适用性
类似于盲人使用手机,胡乱输入、点击
依赖于遍历算法,但是校验能力很差
根据应用的测试用例编写测试脚本来进行测试
适用性
-
更适用“负载测试“,就是运行很久来发现系统是不是存在内存泄漏等问题,对兼容性测试,可以说毫无意义。
-
就是写一个程序遍历应用系统的界面功能。从实际情况来看,能够发现的问题不到10%,比monkey强一丢丢。
-
需要耐心编写各个界面遍历,以及每个界面如何校验以保证兼容测试可以正确检查
对分辨率
-
没意义
-
难以发现分辨率的问题
-
可以根据客户提供的UI页面设计框架图,对页面的对象的宽高属性比例进行校验
对页面图像图标,可通过设置图像校验点进行图像比对校验
操作系统的不同版本
能够在短时间测试针对操作系统进行大量操作,验证APP、小程序、H5应用在操作系统上运行的稳定性,发现运行过程中是否存在黑白屏、闪退、卡死问题
可验证在不同操作系统运行过程中的黑白屏、闪退、卡死问题;
能够在不同操作系统上确保APP、小程序、H5应用部分功能及业务流程的正常使用;
自动遍历会导致绝大多数的功能无法遍历到,从而出现漏测
能够在不同操作系统上确保APP、小程序、H5应用功能及业务流程的正常使用;
可获取在不同操作运行时的CPU、内存、流量、FPS性能数据;
对品牌、字体
-
没意义
-
极少涉及品牌、字体对UI页面印象的校验
-
可验证不同品牌、字体对APP、小程序、H5应用UI页面影响
综观对比,对于不同测试需求和产品所处的测试阶段,可以选择合适的兼容性测试方法。
对于处于开发阶段,注重功能及业务流程测试的APP、小程序、H5应用,可提供自动遍历测试发现兼容性问题,因为这个阶段应用本身不够稳定,使用通用的遍历测试,可以作为“冒烟测试”来使用。
对于刚刚开发完成,即将上线的APP、小程序、H5应用,可通过测试用例测试兼容测试,全面发现兼容性问题;
对于已然上线或者产品已进入迭代阶段的APP、小程序、H5应用,可通过Monkey测试在大量系统上验证产品的稳定性。
以上是关于十年测试老鸟聊聊移动端兼容性测试的主要内容,如果未能解决你的问题,请参考以下文章