作者:郑文强

时间:2018年10月22日

作为在测试行业混了超过17年的测试混混,不管是在公司上班的10多年经历,还是最近几年测试培训和测试演讲过程中和不同学员之间的沟通交流,不少场合会碰到类似的问题:软件测试到底有没有前途?假如有,测试的前途在哪里?假如没有,作为测试人员我们应该怎么办?

今天,我们再重新思考一下我们讨论或面临过无数次的问题,到底什么因素影响了我们测试人员的未来?家庭背景、时代机遇、个人努力?还是智商、情商、资源?亦或知识、技能、天赋?等等。我相信大家一定还能给出更多的其他选项,而且选择该选项一定有充分的理由说明其重要性。尽管每个人给出的选项不尽相同,也即影响我们测试人员未来前途的因素会很多,那么到底哪些因素才是我们更应该关注的,或者是我们可以自身掌控的?

听过很多深刻的道理,但为何很多人依然过不好这一生呢?

通过这篇文章,我想和大家分享一下我在这几年总结和思考的内容,我把它命名为“测试人员的能力成长方程”,简称“成长方程”。我一直坚信:行业兴衰成败不可避免,例如:10几年前的通信行业,但作为测试人员的个体,我们可以更关注在自身,是否每天都在不断的成长。希望大家在阅读本篇文章时,带着批判性思维看待我提供的影响个人成长的因素。你可以基于你的经验和思考,将成长方程中的因素替换成更适合你自己的因素,即本文提供的是思考的思路,而非思考的答案。

一、什么是测试人员的能力成长方程

玩过游戏的人都知道,游戏里面通常都会有生命值、攻击力和防御力等成长值的概念,通过这些量化的数据作为角色级别不断变化的依据。而我们的人生也和玩游戏一样,其过程也是不断的积累成长值,然后一级一级的升级。级数越高往往代表着我们对人生的掌控能力,最终可以体现为你的收入,也可能是你的社会地位,可能是你的学术水平,甚至是你对生活的满意度。

假如将游戏中的成长值移植到测试人员的成长上面,我们是否也可以选择不同的成长影响因素,构建一个评估测试人员能力的成长方程?答案是可以的。根据自己多年的测试实践和经验总结,提出了针对测试人员的测试能力成长方程:

测试人员的能力成长方程 = [(行业知识)*(测试技能)] * 思维能力 * 学习能力 * (1 + 驱动能力)^n

我把影响测试人员成长的因素主要归结为5类,分别是行业知识、测试技能、思维能力、学习能力和驱动能力。根据上述的成长方程,我们可以得到量化的成长值,让我们更加直观的感受到不同影响因素对测试人员能力的影响程度,同时也可以更清晰的指导测试人员应该在什么阶段更注重哪方面能力的提升。当然,提供这个成长方程的目的不是为了通过详细的数据计算得到成长值,而是提供了一个相对定性的角度,为测试人员应该在什么阶段往哪个方向努力是必要的。

根据自己10几年的公司测试工作经历和近几年的测试培训和咨询经验,目前测试人员的测试能力成长值可以定性的分为下面3类:

  1. 三流测试:主要关注在行业知识上面;

  2. 二流测试:除了关注行业知识,也开始关注测试技能方面;

  3. 一流测试:除了关注行业知识和测试技能之外,更强调人在测试过程中的作用;

下面我对影响测试人员成长的5个因素分别进行讲解。

二、测试人员能力成长方程的构成

能力成长方程中得到的成长值,在不同测试人员之间的含义是不同的,甚至在同一个人的不同工作阶段其体现的意义也会不一样。例如:评估测试人员的成长值,有些人可能会基于他的收入进行,也有的人更关注收获的社会地位,有点类似马斯洛需求的不同层次要求,即使是同一个级别的测试能力成长值,其对应的需求也会是不一样的。但你可以把你不同人生阶段的需求或要求作为你要达到的目标,通过不断提高你的能力成长值而实现目标,这也是成长方程想提供的一个方向和思路。

1.行业知识

行业知识是测试人员开展测试工作的基础。假如测试人员对自己要测试的被测对象的用户需求、系统需求、工作原理、实现架构等都不了解,想良好的开展测试活动,那就是纸上谈兵、空中楼阁。例如:我自己这么多年一直是通信行业的,那么了解和掌握通信产品的需求、要求、网络拓扑结构、网络设备原理、通讯协议等,那是必要条件。

但是,行业知识也是相对变化比较快的,通信行业在我刚工作时,那是非常热门,同时也是高收入的代表行业。但是10年之后基本就没落了,通信公司并购或倒闭了不少,不管是待遇还是行业前景,都不再是热点。此时作为测试人员的我们,假如我们还只是关注在行业知识方面,除了行业知识方面有些经验,其他能力基本不具备,碰到了公司裁人,那我们将何去何从?再换工作,继续找通信行业的公司吗?每个通信行业公司面临着类似的问题;假如想换个行业,你的竞争力在哪里?因为你的通信行业知识在其他行业基本上是没用的。

尽管行业知识很重要,但是仅仅依赖于行业知识是不保险的,当出现行业动荡时,我们就会面临失业的风险,随着年龄的增加,其风险越高。因此,作为测试人员,我们在储备行业知识的基础上,必须为自己增加相对于行业不是十分相关的测试技能,为自己第二次职业选择时提供一定的竞争力。例如:我在2012年的时候还是想着去换一份工作,当时去面试了金融行业的一个英国公司。第一次过去面试时,我就和当时的面试官说:“我对你们产品所在行业方面的知识几乎没有了解,我是做通信行业的”,面试官的回答一直给我留着印象:“像你应聘的职位,主要的关注点肯定不是在产品上面,我们更关注你在测试管理、测试过程改进和质量管理等方面的经验和能力”。

2.测试技能

相对于行业知识,测试技能在不同测试行业是相对通用一些的。基于了解和掌握的行业知识,通过应用测试技能中包含的理念、技术、方法和实践,可以提高测试人员的效率和有效性,同时在提供一定质量保证的情况下及时交付软件工作产品。测试人员需要逐步构建自己的测试技能,主要包括(不同人对测试技能的分类都会不一样,适合自己的就是可以的):

1. 测试过程P;例如:过程阶段和活动、测试文档、测试环境、回归测试、脚本化测试与探索性测试、测试基本原则等内容;

2. 测试技术T;例如:静态测试、测试用例分析与设计、测试工具与自动化等内容;

3. 测试管理M;例如:测试计划、测试估算、测试风险、缺陷管理、测试度量、测试团队管理、测试过程改进等内容;

更多关于测试技能的内容,可以参考“构建高效的软件测试知识体系”一文。

不管构建了怎样的测试过程、测试技术和测试管理关键域和测试实践,最终都需要有合适的测试人员去实施。下面的“思维能力”、“学习能力”和“驱动能力”都是关于“人”的核心能力。逐步构建这方面的能力维度,不管是对于前面的行业知识和测试技能的积累,还是在未来职业选择方面都将有更多的选择权和主动权。

3.思维能力

我们经常会听到关于思维的不同词汇:发散性思维、逻辑思维、双赢思维、正向思维、逆向思维、结构化思维等,其中都涉及到思维,但在不同的语境下,思维的含义又会有所不同。例如:

  • 发散性思维、结构化思维、逻辑思维中的思维,更多指的是思考方法;

  • 正向思维、逆向思维、双赢思维中的思维,更多指的是观察问题的角度,类似于价值导向;

假如思维指的是观察问题的角度,那么思维方式就会影响测试人员成长的方向,它决定了你通往目标的方向,是朝着正确的方向前进还是背道而驰,或走了弯路。例如:对于一些测试人员而言,觉得测试没有什么前途、没有什么技术含量,天天觉得处于迷茫的状态,不知道人生的方向在哪里。即使做什么测试工作或者完成多少测试任务,可能对其个人的成长都不会有太多的帮助,因为他一定是以被动的心态、消极的心态在对待他的测试工作;而假如你对测试是正面的思维,以正向的角度看待问题,觉得每完成一个测试任务或解决测试中的一个问题都是对个人能力提升的促进,离你制订的前进目标不断的靠近。此时,你的思维方式有点类似于汽车中的方向盘,掌控着你前进的方向。

而本文中的思维能力主要指的是思考方式。通过培养测试人员的思维能力,可以在下面两个方面得到应用:学习知识和处理问题。我们可以将两者都定义为问题,通过英语描述“问题”会更加清楚,并且其含义是不一样的:

  • 问题可以分为Question 和Problem;

  • 针对Question,需要我们去解答即Answer。Answer的过程需要我们强化对知识的记忆、理解或创新。而对于测试人员而言,就是需要记忆、理解或创新测试知识体系;

  • 针对Problem,需要我们去解决即Solve。Solve更强调的是对测试知识的应用和评估;通过测试人员的思维能力去澄清问题、分析问题、解决问题;

根据上面的描述,对于测试人员而言,不管是构建测试知识体系(更多体现的是Answer Question),还是解决测试过程中面临的各种问题(更多体现的是Solve Problem),都需要应用各种不同的思维能力。在将来的文章中,我将会结合软件测试的知识和实践,和大家聊聊下面的一些思维方式:逻辑思维、归纳和演绎、结构化思维、发散性思维、可视化思维、创新思维、批判性思维等,以及它们在测试过程中的应用。

4.学习能力

现在是一个知识爆炸的时代,新东西太多,而且会越来越多。如果你没有明确方向,今天觉得大数据很热门,去看了一些书籍和文章;再过几天又发现人工智能很潮流,又开始去学习和研究。发现自己每天都在学习,但是学也学不过来,同时发现看了这么多书和文章,我还是我,发现并没有太多的改变,导致越来越焦虑。

对于每个测试人员而言,我们的目标应该是终身学习。那我们应该怎么进行学习呢?下面是我自己给出的建议,希望对你有所启发。至于对不对,大家要结合自己的实际情况,带着你的批判性思维。以构建软件测试知识体系为例,其学习的过程如下:

  1. 明确学习领域,例如:软件测试领域。当然这个方向范围很大,你也可以选择其中的某个关键域作为切入点,例如:缺陷管理、测试用例的分析与设计。

  2. 构建初始框架,例如:ISTQB测试知识体系作为构建你自己的初始框架,或基于测试行业的前辈提供的测试框架;

  3. 持续填充知识,根据ISTQB知识体系框架,对其内容进行分层分类,例如:测试过程、测试技术和测试管理;根据需要对前面的分类不断分解和细化,同时不断往框架中添加内容;

  4. 持续修正知识,将步骤2、3和4作为不断迭代反馈的过程。在学习过程中,测试人员必须带着批判性的思维能力,选择适合你自己测试上下文的测试知识。即把你看书和学习过程中收获的知识拆解掉,然后在自己的工作间将这些知识再重新组装;

通过前面4步构建了测试知识体系之后,并不一定代表你可以应用技术和解决测试过程中的实际问题。为了达到这些目标,你还需要将构建的测试知识不断在测试工作中进行刻意练习,将其完全转化为你的能力,使之真正可以在测试实践中落地。详细内容可以参考我的知乎回答:自学软件测试怎么学。

5.驱动能力

能力成长方程的第5个因素:驱动能力,对测试人员的成长值有非线性的影响。通过培养良好的驱动能力,即使你的思维能力、学习能力等都处于中间的水平,也就是那种一开始条件很普通的人,相比于这些条件更好的人,你愿意更加努力,并在一定时间积累之后,普通人也可超越大部分的人。拥有强大驱动能力的人完全可以弥补思维能力和学习能力方面的一些不足。在人生追求的过程中,借助时间的累积,也可以给一个人带来非凡的变化。一个典型的例子,就是阿甘,他是一个先天智障的人,但他通过自强不息的长时间努力在多个领域创造了奇迹。

驱动能力主要体现为两个维度的内涵,一个表现为努力程度;另一个为努力的持续时间;努力程度因素在成长方程中就是“驱动能力”,而努力的持续时间在方程中表示为“n”,其体现了对成长值的非线性影响。也就是我们平常说的:只要你每天努力一点点,在时间积累下你就会大不同。

驱动能力是因,而努力是果。只有驱动能力强大的人才能做到比别人更加努力,而且可以持续的时间更长,而不是三天打鱼,两天晒网。因此,即使我们在思维能力和学习能力不能达到最优,但通过构建自己强大的驱动能力,比别人更加努力更加坚韧,在时间的积累和帮助下,我们同样可以得到快速的成长。

如何提升我们自身的驱动能力?我觉得兴趣爱好、梦想、目标、理想和追求都应该是一流的驱动能力,有时候甚至是我们的野心。而驱动能力的构建,也需要我们在自控能力、专注能力和时间策略方面提供协助。

测试人员的能力成长方程,其目的并不是来计算具体的成长值数据,也不是在不同测试人员之间进行成长值的比较,而是为了说明我们的成长受到哪些主要因素的影响,以及我们已经具备了什么能力,还有哪些不足?什么因素对我们的成长是起关键性作用的?其目的是帮助我们更好的认识自己,为我们的成长提供指导和帮助。

三、往前看:活在未来

根据前面的测试人员的能力成长方程,我们可以定性的画出一个成长曲线。成长曲线就是我们的未来,只要我们愿意并且付诸行动,最终能活出那个形状的曲线(见下图)。其背后的原理是要求我们不断努力,在时间复利的基础之上,我们一定可以在某个时间点t达到我们的里程碑点,此后我们的成长值将急剧的提高。但是,我们要想达到这个里程碑点,需要前期付出不断努力和持续坚持(包括我自己,也一直在追求着能够突破这个点)。生活工作中,其实很多人穷其一生也难以突破这个里程碑点,一生都在这个点之前痛苦的挣扎,来回折腾,直到老去。

为了能更好的突破里程碑点,要求我们能够往前看:活在未来。把我们所有的时间和精力,都放在对将来有意义的事情上,能帮助你更好更快的实现你的目标。例如:假如你把测试工作只是作为挣钱的手段,那么就是活在当下,利用我们已有的技能换取生活费。更有甚者,是活在过去,例如:沉浸在过去10多年通信行业的辉煌上,对你的成长值增加没有什么帮助。

向前看:活在未来。关注成功,更关注成长!

下面两张图是关于测试人员的能力成长方程,我自己的总结框架,也算是对成长方程的简化和可视化过程。供大家参考!

00关注成长 - 构建测试人员的能力体系相关推荐

  1. 软件测试面试题:测试人员的能力?

    测试人员的能力? 搭建环境的能力(配置JDK.数据库.Tomcat/Apace.程序放相应路径下.检查配置是否成功‚数据库管理和设置ƒ程序设计C++④测试方法论⑤工具的使用能力(QC\QTP\LR\B ...

  2. 02驱动力在哪里 - 献给迷茫的测试人员

    作者:郑文强 时间:2018年10月29日 前一周写了一篇文章"关注未来 - 构建测试人员的能力体系",里面提到了影响测试人员能力成长的一个因素 - 驱动能力.本文将详细和大家聊聊 ...

  3. 【经验分享】打通“任督”二脉——企业数字化转型中如何构建DevOps能力体系?

    一.企业数字化转型背景 企业数字化转型(Enterprise Digital Transformation)的概念在过去二十年持续升温.2020年8月21日,国务院国资委办公厅下发了<关于加快推 ...

  4. 专业技术计算机应用能力考试ppt2007,全国专业技术人员计算机应用能力考试系列教材——PowerPoint 2003中文演示文稿...

    全国专业技术人员计算机应用能力考试系列教材--PowerPoint 2003中文演示文稿 语音 编辑 锁定 讨论 上传视频 全国专业技术人员计算机应用能力考试系列教材--PowerPoint 2003 ...

  5. 测试人员只能点点点?深度剖析测试人员如何变得更优秀

    深度剖析测试人员如何变得更优秀 开篇说明 困境 反思 突破 总结 开篇说明 大家好呀,今天是圣诞节,该约会的人儿都约会去了.公司发了一个平安果,和家里人.闺蜜通过电话后,我就没有什么事儿做了.看着自己 ...

  6. 测试人员如何做到前置

    我们在平时的测试工作中,经常听到产品啊,开发啊,或是测试负责人说测试人员应该前置,那什么叫测试人员前置呢?测试人员前置就是要求测试人员从需求确立的时候就参与进来,在项目进行的各个阶段进行相关的测试工作 ...

  7. 移动测试人员的未来:测试开发技术的融合

    作者:陈晔 蚂蚁金服测试主管 首先说明,测试包括很多领域,这次谈测试的未来,我只谈移动互联网测试的未来.这些年我和很多公司的同学都做过交流,经过了长时间的交流,基本上对现状有一个清楚的了解,这里就大胆 ...

  8. 测试人员如何区分前端和后台BUG方法流程

    测试工程师不只是负责发现问题,除了发现问题这种基本功外,定位问题,提出解决方案,提出预防方案也是要掌握的技能.这里先说定位问题的要求,定位问题要向深入,前提当然是对功能.产品的流程.开发方案.开发人员 ...

  9. 如何提高测试人员问题分析能力

    本帖最后由 xinkai 于 2011-7-13 15:20 编辑 如何提高测试人员问题分析能力        这个问题有很多人问过,闲暇时也曾与老Zee.鹤舞等测试领域专家讨论过.今天来自CSDN成 ...

最新文章

  1. Android 学习笔记之Volley开源框架解析(一)
  2. docker环境下的测试
  3. linux centos更换用户名和密码忘记了,centos7系统中忘记root管理员账号密码,怎么修改密码的解决方式...
  4. 在控制台中输入月,日. 计算这是一年的第几天.(Python)
  5. sqliteman install parameter
  6. nmon工具安装及使用
  7. linux安装trac+svn+apache+wike,apache+svn+trac安装及配置2
  8. Android 简介:Android SDK 和开发框架简介
  9. target sum java_LeetCode 494. Target Sum
  10. 李瑾博士:信誉的建立是否“不计成本”?
  11. Eclipse语言包在官网下载不了-解决方案
  12. C#实战010:Excel操作-查询Excel中的数据
  13. 计算机无法接入工作网络,局域网中电脑无法连接网络怎么处理
  14. 苹果造车欲用中国电池,前提是在美国建厂?比亚迪、宁德时代正与其谈判
  15. 银河麒麟、中标麒麟学习实操资料汇总(含V4、V7、V10)
  16. 德工业联合会建议欧盟对中国采取强硬政策 商务部回应
  17. 【已解决】无法连接Ubuntu下的TeamViewer或Ubuntu下TeamViewer连接未就绪等问题
  18. 4.编写一个程序来计算10000以内的素数之和并输出
  19. cisco 3560 QOS配置
  20. 怎样做才能得到自己想要的

热门文章

  1. 微信小程序服务器错误500,微信小程序配置参数缺少,报错500
  2. 如何微调GPT-2生成高质量的歌词
  3. Unity接入极光经验分享
  4. 眼明、心智、制楔:我们在CES Asia的服务机器人大秀上看到了什么?
  5. 173个Android项目源码及下载地址
  6. echarts堆叠柱状图中显示百分比,tooltip展示百分比和数量
  7. python 合并两个csv文件
  8. 为什么找不到合适的工作?
  9. GitHub贡献全球第5,超15,000名软件工程师,后深度学习时代英特尔如何「软硬兼施」
  10. 基于51单片机的多任务操作系统的原理与实现