ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

测试流程如何落地?

2022-06-16 01:01:56  阅读:242  来源: 互联网

标签:落地 流程 规范 QA 测试 团队


 

 

前段时间公众号后台有粉丝留言问了一个问题:作为测试leader,该如何落地测试流程?

这个问题初看很简单,落地流程做个宣讲然后执行就行了,但仔细一想没那么简单。

团队人员有多少,技术和经验如何,业务类型是什么,研发交付成熟度处于什么阶段,QA在团队的定位是怎样的,种种因素都会影响测试流程的落地效果。

这篇文章,我想谈谈,我对测试流程落地方面的一些经验和思考。

 

为何要制定流程?

先谈谈为什么要制定流程及流程对于工作拿到好结果的重要性。这里引用我之前的文章《测试工程师的职场发展二三谈》中关于流程的一段描述:

问:流程是什么?为什么要有流程?流程能解决什么问题?流程能带来什么保障?

流程是什么?

流程是保障团队目标达成的最佳实践,因人/团队/业务类型/迭代速度/资源紧张程度而异。

为什么要有流程?

没有流程会导致团队中的个体各自为战,目标不统一,进度不协调,资源配给失衡而导致交付质量下降。

流程能解决什么问题?

保证团队大方向上保持一致,尽可能降低由于人员能力、认知水平、资源不足、意外情况导致的项目延期或质量下降。

流程能带来什么保障?

保障团队中大部分人的基本利益不受太多影响;

保障工作中遇到沟通或争执时可以有底气的据理力争;

保障工作过程中的最佳实践可以最大程度的保留并执行下去;

如何高大上的理解流程?

风险可识别+问题可追踪+结果可验证+数据可量化!

我在前面的文章《测试的核心竞争力是什么?》中阐述过一个观点:

测试工程师的核心竞争力是将技术作为底层能力,在尽可能熟悉业务的情况下基于技术解决问题,过程中不断优化流程,保持高效的沟通,保障最终交付产出物的质量和交付过程效率

核心竞争力简单来说就是QA岗位的本质:更好的质量+更高的效率

而流程,就是通往更好的质量+更高的效率的指向标和扶手。

 

测试有哪些流程?

实际工作中测试流程有很多类型,不同公司会根据自己情况制定一些特殊流程,根据软件(需求)的生命周期,下面列举一些常见的软件测试流程:

  1. 需求阶段
    1. 产品方案评审:QA确认产品无重大质量风险,确认目标、时间、优先级;
    2. 技术方案评审:QA通过评审确定测试范围、制定测试计划、评估测试方法;
  1. 研发阶段
    1. 研发规范:编码规范、工具组件使用规范、code review规范、单元测试规范;
  1. 提测阶段
    1. 提测检查:检查code review结果、CI构建结果、核心case冒烟结果;
  1. 测试阶段
    1. 测试策略:包含测试case评审、自动化测试、性能测试等方案制定;
    2. 测试规范:接口测试、集成测试、回归测试、上线步骤及回滚等各种流程;
    3. 验收及上线计划:产品验收、制定上线方案及上线方案评审;
  1. 上线阶段
    1. 上线流程:QA组织dev、PM、OPS、DBA等角色完成上线;
  1. 运营阶段
    1. 监控告警处理流程:日常的日志、告警巡检以及线上监控阈值优化调整;
    2. 线上故障处理流程:出现故障时的oncall响应机制、线上止血、故障排查以及复盘跟进流程;

 

流程要如何落地?

在流程落地方面,我会基于个人实践经验和思考,从下述几个方面去评估落地。

影响因素

业务类型:To B还是To C业务?变更对用户的影响范围有多大?如果出现问题会带来多大的损失?

团队人员数量:如果研发团队人数较少那流程不宜太严格,人越多才需要流程来保障和协调大多数人的动作规范一致;

技术经验能力:技术是否过硬?是有有较多的匹配项目的研发经验?有没有较好的项目履历和最佳实践?

QA定位及要求:QA是侧重验证(外包企业)还是质量保障(甲方)?上级对QA的定位是什么?有什么要求?

研发交付成熟度:团队成员是否有较多的合作和默契?过往合作的交付质量和交付过程是否流畅高效?

落地步骤

1、明确要解决的问题

要制定流程规范,第一步就是明确要解决什么问题。项目中很多问题,都可以思考是不是能通过流程解决。

比如数据库操作之前先备份数据库,事先写好 SQL 语句,需要有人审查,测试环境先测试通过,最后再生产环境执行,那么就可以避免以后不小心删除数据表的事情发生。

2、提出针对性解决方案

对于问题,先思考解决的方法,有了方法后再进一步思考是否能提炼流程规范。

方法和流程规范的区别在于:方法更有针对性,只适用于特定场景或者人,而要将方法上升到流程规范,则需要有一定的普适性,能变成具体的步骤或者标准,让每个人都能执行。

比如说回滚操作就是一个相对普适的方法,可以变成部署后出现问题的流程。

3、达成共识,推广执行

流程规范提出后还需要得到大家认可,只有大家认可达成共识,才能共同遵守,保障制度的执行。

对于大家都认可的流程规范一定要严格遵守,必要的时候需要配合一些奖惩制度,以保障其执行。

4、持续优化,不断改进

流程在实际执行的时难免发现一些不合理的地方,这时候就需要对其进行调整。

还有一些流程规范,随着时间推移,可能已经不能符合要求了,也需要考虑改进甚至放弃,不然反而会成为一种阻碍。

5、流程工具化,工具自动化

制定流程规范的本质是把管理从“人治”变成“法治”到最后的“自治”。

流程落地过程中,最初都是人为去推动流程规范的执行,但也应该尽可能借助技术手段来推动甚至替代流程规范。

比如说编码规范,可以借助各种强大的IDE,快速检测出不符合规范的代码,甚至于帮你直接格式化成满足代码规范的格式。

 

最后总结一下:

流程规范不是约束,而是尽可能保障团队交付质量,提高团队效率。

流程规范是将好的最佳实践固化下来,让大家可以参考和共享经验。

 

标签:落地,流程,规范,QA,测试,团队
来源: https://www.cnblogs.com/imyalost/p/16380505.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有