• 兼容性测试设备如何挑选?


    背景

    测试设计依赖于测试内容,大家对这个观点一定不陌生了。负责终端相关的测试,我们必不可少的一个测试活动就是“兼容性测试”,而市面上机型多且繁杂,所有机型全部覆盖测试,想想就……

    在这里插入图片描述

    各位同学在做终端兼容性或者终端性能测试方案设计的时候,有没有遇到过以下烦恼?(APP向)

    1.手机参数那么多,他们分别影响了什么?哪些参数的影响比较大?

    2.本次测试,究竟应该选择哪些设备呢?选多少台?非它不可吗?

    3.这些设备测试完毕后,是不是就代表兼容性测试够充分了?

    4.设备所谓的“中高低端机型”,到底应该怎么划分?

    ……

    跟我一起来探索下吧!

    第一层思考 — 设备的不同参数,对软件功能、终端性能的影响

    大部分情况下,我们都了解的是:手机的兼容性、性能受制于手机本身的参数,其中有一些关键参数,譬如:cpu、内存、屏幕类型(挖孔屏、刘海屏等)、屏幕分辨率、屏幕刷新率、厂商ROM 等等。

    那么这些参数,分别都影响着什么呢?本人在此抛砖引玉,说上几句:

    屏幕类型:主要影响app的页面展示和交互按钮等。

    cpu、内存:会对动画展示类的功能造成影响,比如动画资源大小、动画播放时长。

    厂商ROM:这个影响就比较多,基本上所有app功能都会或多或少受厂商ROM影响,很多兼容性问题都因为厂商ROM不同引起。

    合理的了解参数和app测试点的关系,对于我们对兼容性测试机型的筛选有很大作用。

    第二层思考 — 团子兵法曰:厂商比我更懂搭配……

    除了设备参数本身,我们还需要考虑一些技术前瞻性、技术特性、软硬件搭载平衡 等方面,以便我们可以针对性的去做一些选择。春江水暖鸭先知,软件和硬件从来都是相辅相成的,我们通过各大厂商的新品发布会、品牌官网、测评博主等渠道,可以获得许多关键信息。

    新机发布:厂商的新机发布,能够让我们了解各个厂商的主打机型,包括一部分概念机。主打机型用户占比一般都比较高,概念机更能够让我们提前看到未来手机可能的样子。

    分水岭机型:比如iPhone X 米奇屏鼻祖,如果仅仅测试米奇屏表现,通常选择这一款就够了。华为的折叠屏、努比亚的前后双屏、三星系列的小屏折叠屏等,都可以用这种方式去进行分类。

    招牌旗舰:各家的旗舰机,性能好,系统又比较新,用户占比一般也不会低。

    送上门来的测试用例:比如iOS15 的系统,边界更正方法有修改,有可能触发断言导致软件crash。

    通过这些渠道获取信息,既能节省我们很多时间,也能让我们对后续可能出现的机型有更多的了解,省时且精准高效,岂不美哉?

    第三层思考 — 看占比

    测试设计,一般优先覆盖市场占比较高的设备,因为占比越多,代表用户越多,因此保证它不发生兼容性问题就很关键。那么我们需要看哪些占比呢?

    1.机型本身市场的占有率,比如安卓机型,我们可以通过Android Studio去查询。

    2.被测试的app机型占有率,这类数据一般都有检测数据可以查询,直接内部收集就好。

    3.发生问题的机型占有率。发生问题越多的机型,风险也就越大,测试的时候就要着重去看,还要了解为什么这款机型发生问题多,是因为系统,还是因为屏幕类型等。这类数据获取也比较容易,查询bug库里面的机型数据就可以了。

    4.用户反馈机型占比。每一个app用户都是有反馈的,可能是建议,可能是bug反馈等。反馈数越多,占比越高的机型,我们就越要着重覆盖。

    第四层思考 — 分档次,贵在于精准,把精力用在刀刃上

    我们前面说了,手机性能会对兼容性有影响,如何划分手机性能,通过性能决定要覆盖哪些手机就很重要。

    手机性能主要受cpu和内存影响,我们可以按照cpu和内存,给手机划分成高中低端机。

    cpu性能好,内存大的就是高端机,性能一般就是中端机,而cpu比较差,内存低的就是低端机。

    当然,你可能要问,什么是性能好,什么是性能差?根据测试经验,可以按照厂商的旗舰来区分。厂商每年的旗舰机一般都是高性能机,那么与旗舰配置相同或相近的,就可以划分为高性能机。

    你可能还要问,旗舰机过了几年性能下降怎么办呢?

    观看最近几年机型发布的数据,厂商发布的旗舰机以下机型,会用一些几年前的旗舰机配置,或者cpu可能是新出的,但是性能跟几年前的旗舰机cpu相近。

    那可以将两年作为一个分水岭,两年前的旗舰机放到现在是中端机,与该旗舰机cpu性能相近就都可以当做中端机了,例如高通7系列芯片,联发科800系列等。

    那低性能机呢?

    低性能机可以按照手机本身的价位去判断,一般而言1000价位以下的手机性能都相对会低一些。或者看芯片,高通6系列芯片、联发科700系列等,都可以归到低端机里面。当然这是我们基于目前业务实践总结出来的,毕竟目前市面上对高中低端机也没有一个准确的说法,仅作为参考。对于机型划分,如果大家有其他建议,欢迎放到评论区里面。

    划分以后,再结合占比,选出高占比,高风险的高中低端机型,需要测试什么机型就一目了然了!

    第五层思考 — 不能忘了还有这些“妖孽”

    现在很多厂商为了竞争,那可是十八般武艺全都使出来了。各种五花八门的屏幕、特殊机型定制化的特殊系统等,给测试筛选机型带来了很大的麻烦。

    为了防止测试遗漏,我们还要关注一些特殊的机型。比如:折叠屏机型,不只会因为其屏幕类型的特殊性产生兼容性bug,还会因为系统的特殊性,导致我们的app展示出现问题。

    Android或者ios版本:系统是问题大户,有些机型会因为系统的特殊性会导致功能问题。比如ios14和15,就会发生同一款型,ios14系统没有出问题,但是升级了ios15的机型反而出现问题。

    这些琳琅满目的手机,我列举的只是一部分,但是一定要考虑进去,可不要让这些妖孽逃脱测试的法眼。

    第六层思考 – 不以测试对象特性开展的测试工作,都是“耍流氓”

    分析了这么多,不结合到测试实践可不行,我们所有的分析都要基于实际的测试场景去落地。我们在测试之前,要了解测试的核心是什么。

    比如动画改版,我们就知道,测试重点是动画。比如新功能展示交互,那么就是手机交互类的功能,这就是功能。

    在了解功能和参数的互相影响之后,我们还要将其结合到实际业务场景中。比如有一个新功能,核心场景是什么?是动画?还是UI展示,把概念结合到实际场景,我们才算分析成功,才能应用起来。

    比如我要测试送礼,礼物赠送以后会展示礼物动画,那是不是就和动画的场景结合起来了?只有做到良好的结合,我们才能实际落地,选出合适且最优的兼容性机型。

    基于上述这些内容,怎么能让笔者这种勤(懒)劳(惰)的人每次手动写方案呢~来吧!上系统!

    设计思路

    首先,要设计系统,我们前面分析也说了,将场景和手机参数结合起来。除此之外,还要整理出一份包含所有机型参数的数据。

    有了这两点支撑,算法的基础设计思路就成型了。基于场景对应的参数影响点,与所有机型参数的数据结合,相同参数的机型划为一组,筛选所有机型,保证场景识别的完善性。并且我们还要考虑发生问题较多的机型,对这种机型标记高危,这样机型的识别就相对比较完善了。

    在识别完善的基础上,我们给机型一个占有率排名,占有率越高越靠前推荐,这样选择的机型就更加完善且具体了。

    实施算法流程

    概览图:

    图片

    · 数据收集:收集机型参数,app手机使用占有率数据,以及内部bug单库里面发生问题较多的机型,放入对应的数据库中,为后续算法做铺垫。

    · 数据维护:收集数据的基础上,实时维护数据,保证机型更新也可以及时维护到数据表中。由于排名数据也是定期更新的,所以需要实时更新排名数据。

    · 场景维护:随着需求不断增加,预置的场景肯定是越来越难以满足新的需求,因此场景可以手工添加维护

    · 推荐算法:

    流程图:

    图片

    步骤1:系统识别选择的场景,读取对该场景对测试有影响的高权重机型参数。

    步骤2:将该参数与数据库中的机型数据比对,相同参数的机型划分为一个等价类,分成多个机型组,每组机型按照占有率(即之前收集的rank排名数据)从高到低排列,例如分类:刘海屏,1080P。

    步骤3:识别主流厂商(华为、小米、oppo、vivo)占有率最大的机型,标记并优先推荐。

    步骤4:标记该场景发生bug最多的机型,高优推荐,标记为高风险。

    · 机型展示:将所有组机型按组展示,组名为影响参数的组合名称。

    算法详解

    图片

    例如某场景,我们假设该场景为A,对A场景影响较大的机型参数为b、c。我们选择A场景,系统读取完该数据以后,会去开始筛选机型,所有机型参数b相同,且参数c也相同的机型为一组。这些机型理论上核心参数相同,可以作为一个等价类,划分到同一个组中,组名则按照参数b和c的集合命名。

    其中,分辨率是个很特殊的参数,市面上手机分辨率不是完全相同的,可能是24001080,可能是22161080,但是他们都是1080p分辨率的手机。因此我们不能取分辨率的详细参数,而是要取1080p、2k、720p这种参数。

    我们兼容性测试-机型筛选相关内容就介绍到这里了,跟着上述思路做好测试设计,你也能让兼容性bug无所遁形!


    资源分享

    下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    【电脑讲解】电脑如何实现双系统
    如何制作很火的抖音配音?原来爆款短视频配音方法这么简单
    JS逆向爬虫---请求参数加密②【某麦数据analysis参数加密】
    vue项目去掉网页滚动条
    食物分类问题
    【日拱一卒行而不辍20220918】自制操作系统
    Navicat 连接Docker的MySQL报错2003,10060 “Unknown error“
    胆囊结石危害具体是什么?
    java毕业设计房产交易系统Mybatis+系统+数据库+调试部署
    使用Spring Gateway为对象存储系统MinIo和kkFileView文档预览增加登录验证
  • 原文地址:https://blog.csdn.net/m0_67695717/article/details/127670435