前言:之前有小伙伴问了我一个问题:作为测试leader,你该如何有效落地测试流程?
这个问题看起来很简单,只要落地流程做个宣讲然后有人执行就行了,但仔细一想却没那么简单。团队人员有多少?技术和经验如何?业务类型是什么?研发交付质量处于什么阶段?测试在团队的定位是怎样的?种种因素都会影响测试流程的落地效果。

一、为什么要制定流程?

先谈谈为什么要制定流程及流程对于工作拿到好结果的重要性。首先问大家五个问题:

  1. 流程是什么?
    因人、团队、业务类型、迭代速度、资源紧张程度而异。我觉得流程是保障团队目标达成的最佳实践。
  2. 为什么要有流程?
    没有流程会导致团队中个体各自为战,目标不统一,进度不协调,资源配给失衡而导致交付质量下降。
  3. 流程能解决什么问题?
    保证团队大方向一致,尽可能降低由于人员能力、认知水平、资源不足、意外情况导致的项目延期或质量下降。
  4. 流程能带来什么保障?
    保障团队中大部分人的利益不受影响和保障工作中遇到沟通或争执时可以据理力争;保障工作过程中的最佳实践可以最大程度保留并执行。
  5. 如何高大上的理解流程?
    风险可识别+问题可追踪+结果可验证+数据可量化!

其实,我们要明白一件事情,那就是测试工程师的核心竞争力是将技术作为底层能力,在尽可能熟悉业务的情况下基于技术解决问题,过程中不断优化流程,保持高效的沟通,保障最终交付产出物的质量和交付过程效率。
核心竞争力简单来说就是测试岗位的本质:更好的质量+更高的效率。而流程,就是通往更好的质量+更高的效率的指向标和扶手。

二、测试有哪些流程?

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

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

三、流程要如何有效落地?

在流程落地方面,我想了想,还是的从下述几个方面去评估落地。

  1. 确认影响因素
    业务类型:ToB还是ToC业务?变更对用户的影响有多大?如果出现问题会带来多大的损失?
    团队人员数量:如果研发团队人数较少那流程不宜太严格,人越多才需要流程来保障和协调大多数人的动作规范一致
    技术经验能力:技术是否过硬?是否有较多的匹配项目的研发经验?有没有较好的项目履历和最佳实践?
    测试定位及要求:测试是侧重验证还是质量保障?上级对测试的定位是什么?有什么要求?
    研发交付成熟度:团队成员是否有较多的合作默契?过往放入交付过程和质量是否流畅高效?
  2. 梳理落地步骤
    1、明确要解决的问题要制定流程规范,第一步就是明确要解决什么问题。项目中很多问题,都可以思考是不是能通过流程解决。比如数据库操作之前先备份数据库,事先写好 SQL 语句,需要有人审查,测试环境先测试通过,最后再生产环境执行,那么就可以避免以后不小心删除数据表的事情发生。
    2、提出针对性解决方案对于问题,先思考解决的方法,有了方法后再进一步思考是否能提炼流程规范。方法和流程规范的区别在于:方法更有针对性,只适用于特定场景或者人,而要将方法上升到流程规范,则需要有一定的普适性,能变成具体的步骤或者标准,让每个人都能执行。比如说回滚操作就是一个相对普适的方法,可以变成部署后出现问题的流程。
    3、达成共识,推广执行流程规范提出后还需要得到大家认可,只有大家认可达成共识,才能共同遵守,保障制度的执行。对于大家都认可的流程规范一定要严格遵守,必要的时候需要配合一些奖惩制度,以保障其执行。
    4、持续优化,不断改进流程在实际执行的时难免发现一些不合理的地方,这时候就需要对其进行调整。还有一些流程规范,随着时间推移,可能已经不能符合要求了,也需要考虑改进甚至放弃,不然反而会成为一种阻碍。
    5、流程工具化,工具自动化制定流程规范的本质是把管理从“人治”变成“法治”到最后的“自治”。流程落地过程中,最初都是人为去推动流程规范的执行,但也应该尽可能借助技术手段来推动甚至替代流程规范。比如说编码规范,可以借助各种强大的IDE,快速检测出不符合规范的代码,甚至于帮你直接格式化成满足代码规范的格式。

三、结语

我司在黄哥的带领和指导下,整个测试部门的各项流程都已基本完全规范起来了,但还是有可以进步的空间,我记得我来公司第一件事就是规范测试用例执行,把测试流程规范建立起来了,但是目前的一个落地效果,我只能说达到了60%,而剩下40%是完全有能力去做好的。我也从各个方面收集了这部分同学没有做好的原因,也一直在优化编写用例的工具,从各个方面提高编写用例效率和执行用例效率,但是最大的难点还是人员的思想改变和执行力的问题。不想写,不愿写,这是通病。我记忆深刻的一点还是项目线上bug复盘会,开发人员第一时间就是提出灵魂拷问:测试为什么漏测?我记得这个版本没有你们测试用例吧!在这件事情上,我没有做好,流程规范没有执行到位,这就是事实,也不用说太多,说再多都是借口,我需要的是反思+改进!!!

流程规范不是约束,而是尽可能保障团队交付质量,提高团队效率。流程规范是将好的最佳实践固化下来,让大家可以参考和共享经验。

测试流程如何有效落地?相关推荐

  1. 怎么测试服务器端口是否对外开放_从零开始内建你的安全测试流程

    一. 安全测试的意义 安全问题,没发生的时候我们可以侥幸,一旦发生生产安全问题,对很多公司来说可能就是黑天鹅事件了.平台的安全,是我们测试中不可舍弃的一环,而且需要长期持续的关注. 二. 从哪里入手 ...

  2. 从零开始内建你的安全测试流程

    一. 安全测试的意义 安全问题,没发生的时候我们可以侥幸,一旦发生生产安全问题,对很多公司来说可能就是黑天鹅事件了.平台的安全,是我们测试中不可舍弃的一环,而且需要长期持续的关注. 二. 从哪里入手 ...

  3. APP不同上线情况对应的测试流程

    一个App软件从研发提测到版本上线都会经过哪些测试流程呢?很多人认为就是进行功能测试,没bug了就提交审核,审核通过就直接上线了,其实不然,有些步骤是需要特别关注的,否则极易造成线上bug,本文千锋教 ...

  4. app测试流程和重点_APP开发测试流程是怎么样的?

    一款APP产品在上线之后的稳定性,取决于上线之前的软件测试,也就是说在上线之前,能找出更多的软件问题并解决,那么上线以后,APP软件自然就很少出现问题,系统性能自然就更加的稳定.那么正规的测试流程是怎 ...

  5. 【CyberSecurityLearning 51】渗透测试方法论+渗透测试流程

    目录 渗透测试方法论 渗透测试(penetration testing,pentest) 渗透测试种类 * 黑盒测试 * 白盒测试 * 脆弱性评估与渗透测试 安全测试方法论 * 开放式web 应用程序 ...

  6. 移动app测试流程与测试点

    移动app测试流程和测试点 1.接收版本 2.版本送测检查 3.ui测试 4.功能测试 5.性能Test 6.兼容性测试 7.上线步骤测试 8.联调测试 功能测试:各个功能点 测试客户端与pc端的交互 ...

  7. 硬盘突然提示没有初始化_测试流程_507283-001 硬盘 HP SAS

    测试流程_507283-001 硬盘 HP SAS 507283-001 HP HDD 146GB 10K 2.5 6G SAS DP 测试流程/指标: 有无残留数据(残留数据清理的两种方法:CMD中 ...

  8. 向anna学习系统结构和测试流程

    今天上午主要是anne简单介绍系统的功能和公司的测试流程.通过她的讲解对于系统的大概流程有了概念.但是具体的问题估计还得到实际的操作中去.可能是这一块的而功能比较老了,所以相关的文档也是没有及时更新的 ...

  9. 一个项目的整个测试流程

    最近一直在进行接口自动化的测试工作,同时对于一个项目的整个测试流程进行了梳理,希望能对你有用~~~ 需求分析: 整体流程图: 需求提取 -> 需求分析 -> 需求评审 -> 更新后的 ...

最新文章

  1. 马化腾:我创办腾讯的这些年
  2. Linux关于终端的基本概念汇总(tty/pty)(转)
  3. 挨踢(IT)脱口秀--2014年2015上半年特别“任性”的网络流行语大盘点
  4. .NET Core下的开源分布式任务调度系统ScheduleMaster-v2.0低调发布
  5. 使用Apache Zookeeper进行协调和服务发现
  6. 修改系统默认路径,如收藏夹、桌面、我的文档
  7. 在线五子棋JAVA网络编程_实验五 Java网络编程及安全
  8. js中的preventDefault与stopPropagation详解(转)
  9. J03-Java IO流总结三 《 FileInputStream和FileOutputStream 》
  10. spring初始化在ServletContextListener实现类中获取spring注入对象
  11. pycharm中同时注释多行代码
  12. python矩阵运算_python 矩阵运算
  13. excel mac 水晶球_水晶球软件使用crystalball.pptx
  14. 小学计算机兴趣班培训总结,小学生电脑制作兴趣班三大主题学习内容
  15. STM32H7高性能MCU系列 STM32H7A3NGH6 32-bit RISC内核
  16. 查找SCI期刊的JCR缩写
  17. ToolGood.Words一款高性能敏感词(非法词/脏字)检测过滤组件,附带繁体简体互换,支持全角半角互换,汉字转拼音,模糊搜索等功能。
  18. idea单元测试(导入Junit4的Java包到项目中)
  19. 经典好玩的休闲游戏大合集,免费玩
  20. 政务领域区块链的应用

热门文章

  1. IMX6Q的硬编码(VPU)的工程代码移植
  2. html 遮罩层穿透问题,移动页面点击穿透问题解决方案
  3. DirectX11 屏幕截图
  4. Java编程:基于socket实现局域网双人联机对战五子棋
  5. js 幻灯片放映图片_20个响应式图像库和幻灯片放映(2018)
  6. QT Libvlc录像功能的实现(提供32位和64位库)
  7. 安卓8.1系统SDK去掉系统设置中的自动调节亮度
  8. Latex数学公式方程格式总结
  9. 用Python画爱心!!(体验画爱心的感觉)
  10. 说实话,Jenkins 真得牛逼!只是你不会用而已~