需求定义中的不支持——可能的测试盲区

需求定义中的不支持——可能的测试盲区数据库


        一款产品必然有其系统需求或规格,在设计说明中定义清楚的不支持,不实现的功能或特性,有的时候也多是测试设计中的盲区。浏览器

        (举例:需求定义产品产品的一些属性为——XX系统不支持Win7以前的系统,XX系统只支持IE内核浏览器,XX系统和YY系统的早期版本不兼容。)服务器


实例:ide

        某款平台产品,从Version1开始,几年下来已经迭代到Version4,期间接入了N多种终端产品,外设产品,数据库,Web服务器。由于兼容性太过庞大,产品分支拉的也密密麻麻,致使维护和测试都很是耗时。借着技术重大更新的机会,平台产品开发了Version5版本,对早期的兼容性通过详细的讨论和设计,约定好只支持几个重大分支的终端,外设产品。测试

        这个版本规划喜大普奔,团队内外都说之后就省时省力了。但很不幸在版本进行beta测试时,突然出现了平台崩溃的致命问题。spa

        排查下来是一个明确不支持的早期版本设备,接入了平台,致使了平台的异常。从测试设计的角度,这就是疏漏之处。产品明肯定义了不支持,并不意味着就能够在测试中不用考虑此类场景。按照边界值的测试设计,这种明确不支持的项目,也能够理解为N+1的边界值。操作系统


        接入“明确不支持”的设备,而后能够验证不少项目:设计

        一、兼容容错性,双方系统是否有异常/崩溃/重启。orm

        二、设计友好性:是否有人性化的提示——好比版本太老,请升级新版本。排序

        三、设计严谨性:直接提示禁止接入。


        从产品设计的角度,兼容性的保护没有设计好,确定是设计疏漏,可是测试没有可以及时设计场景验证此问题,主要责任仍是在测试设计方面。


        这也是测试设计须要注意的环节。

        规格书中明确明确的,XXX功能不支持,或者XXX版本不兼容,只支持XX系统,XX浏览器等等。这些并不表明测试能够不测试。这就是很明显的健壮性和边界值保护测试。


        可是事物具备一体两面性,不考虑是不对的,可是也不要陷入到过分设计的牛角尖里面去。

        仍是上文的举例——XX系统不支持Win7以前的系统,那么在测试设计的时候,有没有必要把XP、9八、vista、2000都装起来,进行兼容性测试?同理,好比Android系统下的App,明确不支持4以前的版本,那么是否是也要把以前的系统都装起来,进行兼容性测试?

        从测试设计和投入产出的实际状况来讲,前者(win7以前)几乎是确定不用测试,后者(Android4以前)可能不用测试,也可能用测试。


        这就是此类测试设计的一个常规分类,产品的性质、客户、覆盖面等等,须要综合考虑。按照测试设计从少到多来排序,以下:


        1、操做系统兼容性。

        能够就按照需求定义所支持的系统进行测试,不须要过多的考虑不支持的产品。

        首先,既然产品敢这么定义,就意味着产品自己就不是QQ、WPS这种,须要全版本兼容的覆盖面很是广的产品,而是有多是特定用户,特定环境,或者使用目标客户精准的产品。因此就没有太多的必要,过分测试。好比守望先锋,你兴致勃勃安装完,发现卡的一塌糊涂,你也不会骂暴雪产品烂,只会怪本身没看清楚软件运行的系统要求,而后本身去买显卡。


        2、Web客户端对浏览器的兼容性。

        同理,产品既然设计如此,必然有其道理,若是用户是全覆盖类型,你设计产品说不支持chorme浏览器,可能会被同类产品直接淘汰。可是若是是给公司内部用的OA系统,ERP系统等,彻底能够经过行政要求的方式搞定,只须要在某内核的浏览器下完美实现便可。

        因此测试设计,也是轻量级的测试设计,找几款其余内核的浏览器,大概的安装使用一下,看是否会有提示“本产品支持XX浏览器”,是否会出现系统异常,致使浏览器崩溃,或者操做系统无响应,就可认为达到设计目的。


        3、App对手机操做系统的兼容性。

        在手机操做系统上,能够明确不兼容,可是由于载体的不可控性,这部分仍是须要测试的。一样,如今网上的模拟云挺多,也不须要实体机刷Rom,投入和产出仍是正向的。



        4、本身产品之间的兼容性。

        好比说某种行业产品,好比超市的扫码计费系统,小区楼宇的报警系统等,从平台、到终端,从软件到设备,都是本身作的,那么这种升级的兼容性,反而是产品设计和测试设计的重点。

        新产品的迭代,能够明确不支持某种老产品/老版本,可是要给出友好的提示,或者明确的解决方案。

        因此这种测试,每每就是XY的一张表,或者XYZ的对通表,一个个测试过去,打勾打叉,枯燥繁琐,可是事关重要。



        本文主要描述了测试设计可能的一个盲区——规格明确不支持的功能/特性。但同时也明确了不要过分设计,不然就是浪费成本和项目时间。

        测试设计其实是一个复杂的加权系数的模型,和产品、客户、使用方式、频率、缺陷修复成本、行业、公司不少的因素相关,切不可一律而论。

相关文章
相关标签/搜索