测试流程及规范

    自今年5月份独立负责某个业务方向的测试工作以来,结合自己的实践经验,总结出一套相对较具体的测试流程及规范体系,即在每个阶段,QA应该要做的事情及相关方法,具体如下

    细节决定成败

1.需求分析阶段

   1.1明确需求,确保清楚交互细节;如果是较大长期项目,需要明确每期的需求计划

   1.2应用质量模型,开始考虑测试方案---功能性、可靠性、易用性、效率、可维护性、可移植性等

   1.3如果是倒推的项目,需要了解各个关键时间点(上线时间点、开发提测时间点等)

    需求评审完,可能还会有较大幅度的修改,如果有较多需求不同步,可以要求进行二次需求评审;

 

2.设计评审阶段

   参加设计评审之前,根据需求交互文档,大体了解其实现方案,以便评审中能深入到细节check;

   要带着一种check的态度进行评审,避免只是听的角色!

    2.1确定本次需求涉及的业务部门

    2.2明确系统架构图——依赖的模块及调用关系

    2.3明确交互流程----针对具体功能场景,了解并check实现细节

    2.4明确此次的改动及影响面----除了需求的实现,是否会有其他改动,比如代码优化

    2.5上线步骤及回滚方案的确定

评审完2日,进行工作量评估及具体排期安排

3.测试准备阶段-开发阶段

    3.1测试人员的安排

         根据项目排期及人员现有能力,提前安排相关人力资源,以防时间及项目冲突

   3.2测试环境的准备

         对于新增加的模块测试需要提前申请测试所需资源(机器,域名,数据库等),建立好测试环境部署任务。

    3.3测试用例的准备     

        根据需求文档及相关设计评审结果,编写测试用例(此阶段主要是依据需求文档,进行黑盒测试用例的设计)

    3.4梳理线上监控所需的日志添加及质量指标

        质量指标主要是经过对需求的分析,用来反应上线后产品的功能是否正常的指标

    3.5测试数据的准备        

    3.6 jira空间的建立

         针对超过一天测试时间的项目,都要有独立的jira空间记录bug情况,方便沟通及统计    

   3.7技术储备

         如果是涉及到新的技术或者知识,需要提前补充,只有熟悉了解的基础上,才能进行较好地测试      

   3.8用例评审会议室准备 

4.用例评审

此环节的目的在与各角色缺确认需求,及case评审

    4.1提前一天进行所有参与人员的时间提醒

    4.2待确认的事项,要有时间点及负责人(方便跟踪、各角色同步和统一)

    4.3showcase会议室的准备

5.提测阶段

提测前:

    5.1.提测一天前,QA必须提供一份冒烟case,以便RD进行自测;

    5.2.提前一天进行所有参与人员的时间提醒

showcase中:

    5.3功能bug定位时间不能超过2-3分钟,否则由前后端的RD线下确认

    5.4需求有歧义的,不能超过2-3分钟,否则对应PM来线下确认

    5.5所有问题进行会上记录—— 到qa环节的时间点和每个角色对应的跟进人

结束后:

    5.6整理会上记录,并发送到群里 @对应的人

    5.7根据记录时间点,进行问题跟踪


6.测试执行阶段

     6.1根据前面定的排期,给出一份测试计划,比如完成一轮功能测试、兼容性测试和异常情况测试的时间点

     6.2及时check是否有风险,并及时上报

    6.3针对每个功能场景,需要熟悉到其业务实现逻辑,这样会考虑到更多地影响因素,补充测试用例

            UI层与接口之间的交互逻辑:针对一个功能点,UI层负责实现什么,接口的定位是什么

            接口内部的逻辑:接口内部的代码逻辑是啥样的,是否依赖了外部接口

    6.4上线计划进行check(上线顺序跟RD确认\针对已有功能是否做了兼容)

7.项目验收阶段

    7.1UI验收

         全功能提测后,UI人员即开始做UI校对,及早进行UI改动调整;

    7.2产品验收

          7.2.1 大功能模块无缺失验收:QA完成第一轮测试->bug修复->PM第一轮功能验收与QA第二轮测试同时进行

         7.2.2 功能细节交互验收:QA完成分支测试->PM第二轮功能交互验收->QA全功能回归测试

8.上线过程 

      8.1check配置、DB,线上域名、静态资源模块、脏数据清理、服务依赖方是否已经就绪

      8.2commit号check:回归的commit与上线的commit

      8.3回滚方案是否准备好 

9.线上阶段

    9.1QA验证

        上线后,QA必须验证本次迭代功能点和主流程测试用例

     9.2线上监控

       针对前面梳理的质量指标和关键日志,对线上用户的使用情况进行分跟踪分析,确定线上质量

       

除了最基本的要求(无延期、无大问题)之外,项目过程还需要思考几个问题:

需求阶段

(1)能否解决用户的痛点或者问题(按照产品设计执行的流程要清楚)

(2)针对此痛点,是否有成本更小的方案

(3)质量验收标准是啥(即 怎样才算是保证了质量)


设计方案

    (1)是否已经满足需求

    (2) 后续此类业务需求的扩展或者迭代,开发成本是什么(扩展性更好);测试成本是什么,怎么缩减测试成本(是否可以沉淀工具)

    (3)此种设计方案是否有潜在问题(第三方应用-数据库、kafka、redis;;幂等性;;一致性)

    (4)改动影响的范围有哪些


测试过程+复盘阶段

    (1)测试时间如果压缩0.5天,哪些流程可以优化来提效

    (2)为什么没有按照预期进行;下次怎样才能不出此问题

    (3)针对线上问题,复盘,列出预防todo


你可能感兴趣的:(测试流程及规范)