所以对微信公众号有些怠于更新了。这里将知识星球的前期一些章节在这里分享,主要是一些对测试的误解。

从业多年,我们看到了太多对测试的误解,包含兄弟部门对测试的误解,测试行业对自己的误解,真的是见惯不怪了,甚至有的时候,你也只能苦笑而过。

  • 兄弟部门对软件测试的误解

我们总是习惯了先说别人,这是一个不好的习惯,遇到事情,我们还是需要多从自身、己方来找原因,看清楚哈,是自己的己方,不是甲乙的乙方。

如下几条是非常扎心的测试人员的委屈,在现场引起了高度共鸣。

优秀测试工程师成长之路:对软件测试的误解_测试类型

*************************************************

误解1:如果发布出去的软件有质量问题,那是软件测试人员的错

优秀测试工程师成长之路:对软件测试的误解_测试类型_02

在实际的工作中,测试人员经常会被指责:为什么这个没测出来,,测试人员经常成为那背锅侠。真正印证了那句:没问题的忽略你的存在和功劳,但是出了问题,都是你的问题,你的错!

然后,我们要正视:

  1. 软件测试是一种有效的提高软件质量的手段
  2. 即使在投入上有所保证,测试也不能百分为百发现所有质量隐患
  3. 软件质量并不仅仅是测试出来的,Bug永远不会是测试人员制造出来的

*************************************************

误解2:软件测试技术要求不高,至少比编程容易多了

1.十几年前的测试行业是个高门槛的职业,技术要求更是高于开发,要能进行代码走读、要能从底层设计上指出设计缺陷,做外企,如微软,更是有SDET职位,薪资和要求一点都不比开发工程师的低

2.如何在有限的投入下,提高软件测试的效率和产出是一件很见功底的事。好的测试人员不仅要掌握各种测试技术,还要具备丰富的编程经验和对BUG的敏感。测试的复杂之处,除了测试技术问题之外,还有测试管理问题。

优秀测试工程师成长之路:对软件测试的误解_测试工程师_03

3.目前测试行业的门槛低,是整个行业造成的。任何职业的从业人员都是呈现金字塔分布的,但是近些年的底部面积拉大,尤其是互联网行业下的质量要求降低,系统质量的要求往往没有传统软件那么高,这也导致了出现小问题,不怕。门槛一降再降,甚至直接锯掉了,凡是阻碍朕骑车的门槛,一律锯掉”。所以越来越多的同学涌入测试行业,甚至转行、跨专业等,来做一些技术要求偏低的手工测试工作。 

注:2019年,我在NCTS会议演讲的时候,曾经说过,测试的地位低是大量从业人员自己造成的,也是产品趋势造成的。细细品品哈。

*************************************************

误解3:有时间就多测试一些,来不及就少测试一些

测试不是可有可无,随心所欲的。

规范化的软件开发需要对软件测试早做计划,分配必要的时间、人力和财力等资源,并将其作为项目管理的一个部分加以控制和协调。

但是在有限的时间里,我们一定要抓住核心功能、重点关注的部分,来大力投入,通过有效的手段,比如关键字、标签、功能相关性、精准测试方法等找到你需要重点关注的部分。

*************************************************

误解4:设计-实现-测试,所以软件测试是开发后期的一个阶段,也只是测试人员的事情,与他人无关

大家热衷于讨论人人都是产品经理,却很少有人愿意讨论人人都是质量人。

扯点题外话,曾经有人开玩笑,产品经理有种与生俱来的优越,让人很向往,因为好歹是个经理嘛。其实我对产品经理的期望是蛮高的,作为产品的Owner,产品定义、项目管理、横向沟通、对外销售对接等,所以真正给个经理的title,并不为过。

那么测试到底在开发的哪个阶段呢?在当下讲敏捷研发,讲DevOps,我们认为测试无处不在,贯穿在研发中的每一个地方,当然你可以把测试扩大到“质量活动”这个概念上来。

在敏捷组织转型里,有一些人会把开发测试产品放成一个Scrum团队,这是一个产品化的管理模式 ,那么在这样一个产品化管理模式里,开发测试产品在一起摸爬滚打,打造一款产品,有着共同的目标,所以要背负同样的质量任务。祖国建设不分职业贵贱,需要各个工种精诚合作。

在CICD、DevOps趋势下,我们为了加速交付,需要实现持续测试,所以会把测试/质量活动,融入到CICD的流程中去,如何时触发自动化的接口测试,何时触发代码扫描,实现部分的测试左移等等,这些都对质量活动的发生阶段提出了更多的要求。

测试人员/领导对测试的误解

每次谈到这个话题的时候,其实比谈兄弟部门对测试的误解,心情还要沉重,因为这反应出了测试行业自身的问题。自己不争气,怎么都没用,不是吗?

*************************************************

  • 误解1: 测试人员的职业发展,自动化测试一定比功能测试高级吗?---好好想想,再回答!

看到这个命题的时候,不知道各位怎么看,或许有人嗤之以鼻,不以为然,心里默默的说:简直废话。

可是,我沉默了,我是多么希望有人能帮我指出这句话中的问题。

其实:功能测试和自动化测试本来就不是一个维度的东西,为什么要放一起呢?

优秀测试工程师成长之路:对软件测试的误解_软件测试_04

我记得做培训现场,我讲到这个章节的时候,是对现场的同学做了一些提问的,这里也希望大家能一起思考一下,或者回忆一下你在最近的各种场合,如面试中,是如何回答的?


优秀测试工程师成长之路:对软件测试的误解_测试工具_05

  对于这么常见的问题和答案,大家发现了什么问题没有?

  我一般遇到这种答案的时候, 会启示候选人这个答案有什么问题吗?当然,有些同学在这个时候,会有点懵。

  我继而会启发,那目前的经验和后续希望的方向,有哪些区别?同学们会回答功能测试主要是日常工作,自动化测试更能体现技术水平,也是很多公司喜欢的定位。

  其实,候选人的这个答案,最大的问题在从不同的维度来划分了测试种类。

和功能测试同一个分类维度里有哪些呢?

优秀测试工程师成长之路:对软件测试的误解_测试类型_06

这个观点,有些测试总监也分不清,对吗?

我们一起想一想你们的测试总监是不是有时候也会说:别天天做功能测试了,做点自动化测试吧,这样对你们职业发展有帮助。

似乎苦口婆心,其实他犯了一个最根本的错误,把分类搞错了,自动化测试对应的是手工测试。

说到这里,大家是不是真的相信了,似乎你自己的回答、你领导的说法,都被我说中了吧。

*************************************************

误解2:测试开发工程师的职级问题 

前几天,我关注了一个抖音公众号,说实话,我是抱着学习的心态去关注的,他一万多粉丝,做测试公众号里,算成绩很好的了吧,我认真看了他的几个短视频。

  • 首先,我必须说,我不理解为什么有些公司会允许团队花费这么多时间在这上面,如果是专业运营团队,无可厚非哈,比较短视频是流量入口。然而这是一个公司内的测试团队,测试总监带着团队成员开公众号,拍视频,如果我是领导,我会不开心的,有点浪费公帑啊。前几天,恰好也看了一篇文章:“你的副业正在毁掉你的职业发展”,希望大家能好好思考。
  • 自诩年薪50万,列出了自己的职业发展路径,似乎自己已经属于测试行业的头部一样,殊不知百万级的测试总监还是有一些的哈。
  • 给出的一些测试知识,在我看来完全是误人子弟啊。我记得前几天,我写过他对职级的划分,让我大跌眼镜。

“今天看到一个测试公众号,上万粉丝,给定义的测试人员职业生涯的几个阶段: 

0-1:初级测试工程师

1-3:中级测试工程师

3-5:自动化测试工程师、性能测试工程师、安全测试工程师

5-8:测试开发工程师、性能测试专家、安全测试专家

8年+ :测试总监

看着就来气,竟然这样划分的。我只能送一个大大的叉号 了。

优秀测试工程师成长之路:对软件测试的误解_程序人生_07

我就搞不懂了,这2个职位是按照年限来分的吗,和年限有什么关系?就没有2、3年的测试开发工程师吗?他的划分真的是完全的一窍不通,完全搞不清楚:

年限是经验或者经历,而职能是分工,而至于初级、中级、高级才是职级。

靠着标榜年薪50万的测试总监,就出来开公众号,真心为为那1万多的粉丝着急。 ”

在一个组织里,各个职能分工、各个级别的工程师,是需要配合、磨合、优化的,我们希望测试开发工程师来赋能测试团队,自动化测试工程师来解放手工测试工程师的工作,甚至通过这2点来降低测试资源投入。

而评定初级、中级、高级,我们是要看一个工程师的多因素的,比如业务理解、技术深度、广度、文化推动、领导力等等。

优秀测试工程师成长之路:对软件测试的误解_测试工程师_08

*************************************************

误解3:测试人员的考核与培养:

最近经常有一些测试总监来找我咨询,说很困惑几点:

1.通过bug数量考核测试人员

2.不想花时间培养测试人员,因为培养好了也留不住

3.不想招聘高端的测试,担心自己的位子受到威胁

我想说:个别测试总监在我眼里,也就是个测试组长而已,目前做的事情,就是带领几个同事一起负责测试项目而已。不知道这句话会得罪多少总们,请见谅,只是希望测试行业越来越好。

如果你面临这些困惑,说明你还需要成长,当我们把困惑解决了,成长了。从不舒服,到舒服,说明你成长了。

*************************************************

From uncomfortable to comfortable 

但是我们要时刻保持清醒,走出舒适区。 

优秀测试工程师成长之路:对软件测试的误解_测试工具_09

只有当你的下属能够成为你,你才能有机会获得更多,比如职位升迁,当然注意这里我说的是有机会,这也是为什么有些测试领导担心自己的职位受威胁,因为他没抓住那个下属成长给他带来的机会。

所以

请抓住下属成长给你带来的机会!

请抓住下属成长给你带来的机会!

请抓住下属成长给你带来的机会!

重要的事情说三遍,希望测试管理者能明白这个道理!

*************************************************

*************************************************

这个内训,当年是在非常气派的深圳平安大学,给深圳的某测试团队输出的一次培训,现场效果非常好!

优秀测试工程师成长之路:对软件测试的误解_测试类型_10

平安大学是中国最早成立的企业大学之一,同时还被评为中国最美丽的企业大学。是中国国内三大企业学校之一。 占地面积20万平方米,建筑面积7.85万平方米,有多间独具特色的教室、研讨室和会议室,能同时容纳1000人学习,适合承办各类会议和研修培训班;拥有高尔夫球场等一流的康体设施,星级服务的配套酒店,以及商务中心、超市等服务设施。

这个系列课程的大纲,如下,当然不排除经过自身这3年的成长,我对一些知识点的理解或者优先级等可能会有些变化,后续会对大纲做部分调整。

一. 软件测试介绍 

 对软件测试的误解 

 如何理解软件测试 

 软件测试的定义 

 软件测试的对象 

 软件测试分类 

     常见问题分析 

     试用场景介绍 

     优缺点比较 

 软件测试的目的 

 软件测试的起点 

     从计划开始? 

     测试计划 

     需求分析 

     测试流程 

 软件测试的终点 

     报告为终点? 

     测试报告 

     客户支持 

二. 不同研发流程下的软件测试 

 软件测试内容及主要技术 

     接口测试 

     功能测试 

          白盒测试用例设计方法 

          黑盒测试用例设计方法 

     健壮性测试 

     性能测试 

     用户界面测试 

     安全测试 

          OWASP Top 10 项目 

     可靠性测试 

     安装/反安装测试 

 瀑布式模式下的软件测试 

 敏捷模式下的软件测试 

     开发测试比例? 

     测试教练 

     自动化测试 

     探索性测试方法 

… 

 多层质量保证活动 

     环境、系统及质量活动 

     代码扫描 

     持续集成 

     每日执行自动化用例集 

     自动化冒烟测试 

三. 自动化测试框架选择 

 什么是“软件自动化测试”? 

 金字塔模型分析 

 软件自动化测试的优点? 

 自动化测试工具概述 

 自动化测试框架介绍(DDT、BDD、Keyword 驱动) 

 自动化测试使用场景 

 自动化测试流程及 CI 结合 

四. 测试人员的职业发展及困惑 

 如何衡量测试效率? 

 在敏捷研发里,测试在哪里? 

 DevOps & TestOps 

 职业发展方向及重点 

 职业困惑 

 知识面的扩展 

 白盒测试有助于测试用例设计 

五. 质量体系 

 软件质量要素 

 研发过程质量 

 软件结果质量 

 质量指标获取 

 质量数据持续改进 

 QA 流程规范 

六. 团队管理 

 组建及管理团队(质量中心) 

 质量中心团队架构 

 质量中心团队职责与分工