阅读更多

0顶
0踩

研发管理

原创新闻 测试人员职业发展之路

2017-08-11 10:43 by 副主编 jihong10102006 评论(0) 有8192人浏览
在我们开始尝试为大家描述软件测试工作的多种可能性之前,先来看看在现在所知最近代的开发模式中,测试人员还会继续存在吗?因为如果连测试工作本身都不存在了,我们也没必要进行后续的讨论了。

很多做测试的朋友问过这样一个问题:“现在敏捷开发模式中,自动化测试那么流行,而且连开发人员都开始做测试了,是不是以后就没有测试人员了?

其实我在这里可以肯定的告诉大家现实并不是这样的。

首先我们需要讨论的是分工的问题。人类的工业化生产最初也是不分工的,但随着生产技术的复杂度提升,以及对于生产效率的更高要求,产生了分工;同样对于软件开发来说也是一样,最开始并没有测试人员和需求分析人员,而都是开发人员。也是随着软件项目的复杂度以及要求的提高,慢慢产生了工作种类的区别,由此产生了专门做测试的人员,也就是测试人员。由此看来,并不是有了测试人员这样一个职位,才诞生了相应的工作和职责,而恰恰相反;那如果想取消这个职位,但是相应的工作和职责并没有消除,在我看来无非就是把这个职位换一个名称,或者是和别的职位的工作与职责重新排列组合而已。

其次我们需要明确什么是测试的核心,是自动化测试,还是测试报告,亦或是探索性测试呢?其实都不准确,我认为测试用例设计才是软件测试的灵魂。没有恰如其分的测试用例设计,软件测试很容易误入歧途:导致没有目标的盲目测试,不考虑投入产出比的自动化测试,不从全局优化的、割裂的单元测试、集成测试和系统测试等。测试用例设计也是需要熟练运用测试用例设计方法,并且结合测试人员的经验和智慧才能设计出来的,这同样是测试人员不同于软件开发团队中其他角色,需要不断积累的关键一点。如果说在敏捷开发模式中,开发人员可以完成单元测试和自动化测试,业务分析人员也可以进行探索性测试的话,测试人员唯一不能被取代的就是测试用例的设计。如果说描述得更全面一些,即使要让别的角色替代测试人员,至少他们也需要具备测试用例设计的能力,而这种能力需要长时间的锻炼和运用才能具备。

最后,虽然测试工作并不会消失,但是测试人员也需要进化,需要跟随新的软件开发模式,不断学习,不断进步,保持自己的必要性和特殊性。举例来说,在敏捷开发模式中,测试人员不仅仅是根据需求编写测试计划和用例,并且手动执行,给出测试报告就好了。而是需要测试前移,在需求分析阶段尽可能地发现和预防问题,在开发过程中避免问题的产生,并且通过问题分析指导开发方向和改进措施;同时需要测试范围扩大,不仅需要覆盖软件开发阶段,还需要覆盖产品上线部署以及运维的相关活动,甚至是通过分析用户反馈来提高产品质量。可以看出敏捷中测试人员的任务和职责更多了,这就需要我们更加发挥自己的聪明才智,更高效地分析和解决问题,更快速地学习各项技能,同时注重各项实践的运用。

既然测试工作并不会消失,而且敏捷开发模式带给我们新的机遇和挑战,那对于测试人员来说,职业发展的方向又有哪些呢?

首先我们需要明确想通过测试作为跳板,去做开发类和管理类等工作不在我们的探讨范围内。很多测试人员其实在选择软件测试作为职业的时候,其实更优先选择的是软件开发的职位,只是可能由于种种原因而与开发职位失之交臂,只好选择了软件测试作为自己的职业。一旦有了合适的机会,他们会选择成为开发人员,这样的职业发展不在我们的讨论之列。另一类测试人员对于软件测试其实没有热情,有且仅仅把软件测试作为养家糊口的工作,希望通过工作年限的增长增加自己的薪水,更多希望工作时间短,不用加班,这样可以保证更好的家庭生活。选择这种工作和生活方式是个人自由,但是也不是我们想进行讨论的。还有一类测试人员,希望通过短期的软件测试工作中突出表现,得到管理者的赏识,从而进入管理层,这样的职业发展也不是我们讨论的。

其次我们现在所知道的最近代也是最流行,甚至可以说最先进的软件开发模式是敏捷开发模式,所以我们对于测试人员的职业技能发展也是基于敏捷开发模式来分析的,如果有更新的开发模式出现,这些分析和定义也许会失效。

在知悉这两点之后,那我们认为对于测试人员来说,在保证测试人员的独特性,也就是做好测试用例设计的基础上,职业发展大致可以分为以下几类方向(如图B-1):

图B-1 测试人员职业发展方向

  • 偏向于需求方面的测试人员。我们说过在敏捷开发模式中,测试前移,测试人员会更多地接触需求分析,从需求分析阶段尽可能地发现和预防问题。在这一方面现在已经有行为驱动开发和实例化需求等方法协助测试人员深入需求分析阶段并扩大自己的影响力,与此同时测试人员也需要更深入了解产品所在的行业以及业务知识,成为业务专家,才能使得测试分析更有洞见。
  • 偏向于开发辅助的测试人员。在敏捷开发模式中,开发人员不仅需要编写单元测试的代码,有可能还需要编写自动化测试代码,所以为开发人员提供好的工具,使他们能更快速、更准确、更全面地添加和执行测试也是测试人员可以发展的方向之一。
  • 偏向于自动化测试的测试人员。正如上一条所说,开发人员有可能编写自动化测试,同时测试人员也是可以自己进行编写的。而且对于自动化测试,测试人员不仅需要分析项目的架构和技术栈,选择最适合项目的自动化测试框架和编程语言,还需要从头开始搭建自动化测试框架,并完善相关的自动化测试配套内容,诸如测试数据管理、测试并发执行、测试方法封装、测试脚本的设计等内容。
  • 偏向于运维的测试人员。测试不仅需要前移到需求分析阶段,还需要覆盖产品交付和线上监控及分析,以便快速发现问题和指导下一阶段的开发。这就需要我们要了解更多和环境以及监控相关的技术以及工具,例如亚马逊AWS,New Relic,Splunk和PagerDuty等。我们不仅需要熟练使用这些技术和工具,更重要的是分析从这些技术和工具得到的数据,形成有意义和目的的协助开发团队提高的行动计划。
  • 偏向于专项测试能力的测试人员。测试人员不仅需要在知识的广度得到发展,还需要深入特定的技术,称为某项技术的测试专家,例如前端测试、数据库测试、性能测试、安全性测试和可用性测试等等。这样测试人员就不局限于某个特定的项目,而是变成了可以跨越项目的具备特定测试技术的技术专家。
  • 偏向于测试咨询的测试人员。测试人员通过在敏捷开发模式中测试深入开发的整个流程和细节,在具备了丰富的项目经验和技术能力后,可以输出对于软件测试甚至整个开发过程的总结及认识,帮助更多的团队解决当前的问题,提高团队测试技术能力和意识,进一步优化产品的质量。这也是测试人员实现更大的自我价值的一种途径。
  • 偏向于测试能力建设的测试人员。在上一条发展路径的基础上,测试人员还可以进一步升华成为使开发团队具备或者提高测试能力,进行测试转型,甚至团队转型的关键性指导人物。而且通常这种测试人员会同时负责多个团队,而且人数一般很少。

也许你认为前几种测试人员相对来说更偏向于技术,容易在团队内实现,而后几种更像是给广大的测试人员画饼,并不一定能实现,只是描述一个可能性而已。其实这几种测试人员的发展之路是根据我们实践的测试人员的规划得出的,也就是说我们是有真实的人物发展作为依据的。所以当大家被自己工作中的现实所打击到的时候,不要动摇我们可以做更好更强大的测试人员的决心和目标,而是更努力的向那个方向努力。

最后,我们想告诉读者:产品质量并不只是软件测试人员的责任,而是需要整个团队都关注的内容。只有给予软件测试人员足够的关注和重视,我们才能充分发挥每个人的特点,合力推动产品质量的进一步提高。从另一方面,软件测试人员也需要意识到自身技能的缺失,强化技能水平,成为团队可以依赖和值得信赖的一员。

引用
相关阅读推荐:《Web测试囧事》,ThoughtWorks测试专家联合撰写,以73个源自实战的场景化故事,揭示Bug定位、解决思路与规律,轻松、潜移默化地掌握测试技巧与原理,触类旁通。

  • 大小: 10.3 KB
0
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 软件是这样来的(有趣、引人思考的一张图片)

    什么都不用说 内容都在图片上 其中,分析师那幅图最精彩、最有想象力 不知道是不是火星 ps.论坛支持直接把图显示出来吗

  • 机器人是人吗

    当人工智能人有了情感交流能力并具有生物生成功能后,在自然人与自然人、人工智能人与人工智能人以及自然人与人工智能人之间的多元关系中,谁来制定规则,为谁制定规则,谁是自然世界或者虚拟世界的主宰或规则主体,...

  • 好的软件架构设计

    前言:软体设计师中有一些技术水平较高、经验较为丰富的人,他们需要承担软件系统的架构设计,也就是需要设计系统的元件如何划分、元件之间如何发生相互作用,以及系统中逻辑的、物理的、系统的重要决定的作出。...

  • 软件架构设计

    前言:软体设计师中有一些技术水平较高、经验较为丰富的人,他们需要承担软件系统的架构设计,也就是需要设计系统的元件如何划分、元件之间如何发生相互作用,以及系统中逻辑的、物理的、系统的重要决定的作出。...

  • 软件项目管理

    现在有很多企业上管理软件之前都希望软件公司派人来了解情况,提出针对性建议。这其实给很多软件公司销售经理出了个难题,自己亲自上企业不信任,而且也不专业,请公司派咨询顾问过来资源难以协调,响应不及时用户也...

  • 最强的思考、写作的工具:超简单的卡片盒笔记法!

    卡片盒笔记法(Zettelkasten)是最强的思考、写作的个人工具,和知识工作的整体方法、放大器。 将之发扬光大的,是社会学家卢曼,在 6 堆、4 个抽屉积累了 90000 个知识卡片。 他是工作狂,生前出版了 70 多本书...

  • 最强的思考、写作的工具:超简单的卡片盒卢曼笔记法

    最强的思考、写作的工具:超简单的卡片盒笔记法! .2020-12-01 14:01:46 ——用斯蒂格勒的理论升级笔记法 卡片盒笔记法(Zettelkasten)是最强的思考、写作的个人工具,和知识工作的整体方法、放大器。 将之...

  • 硬纪元干货|视+AR联合创始人涂意:AR将是下一代计算平台

    很好的一个方法就是说,AR通过附着在一些传统行业的实体产品上面一块来售卖,达到一个很好的售价,这样是一种新的一个盈利模式,可以让他卖得更好,实现一个营收,这不像卖硬件也不像卖软件授权,他会卖的更直接一点...

  • 《抓住听众心理——演讲者要知道的100件事》一第 1 章 人们是怎样思考和学习的...

    本节书摘来异步社区《抓住听众心理——演讲者要知道的100件事》一书中的第1章,第1.1节,作者: 【美】Susan M. Weinschenk 译者: 杨妩霞 , 杨煜泳 责编: 赵轩,更多章节内容可以访问云栖社区“异步社区”公众号...

  • 关于大型网站技术演进的思考--网站静态化处理

     在存储瓶颈的开篇我提到像hao123这样的导航网站只要它部署的web服务器数量足够,它可以承载超大规模的并发访问量,如果是一个动态的网站,特别是使用到了数据库的网站是很难做到通过增加web服务器数量的方式来有效...

  • 明翰经验系列之恋爱篇V5.6(持续更新)

    一个男生的成长要靠女生,作者一直这样认为, 无论女生让男生看多少这方面的书也好、教学资料也好、相关的影视剧也好, 都不如女生直接跟男生谈一场恋爱再分手来的快, 来的记忆深刻,来的刻骨铭心。 【明翰原创...

  • 精进:如何成为一个很厉害的人--作者:采铜

    精进:如何成为一个很厉害的人 作者:采铜 文章目录精进:如何成为一个很厉害的人序 用更勇敢的方式去生活01 时间之尺 我们应该怎样对待时间活在“全部的现在” 从当下出发,联结过去与未来那么,一个人应该怎样对待...

  • 这些操作技巧能够让你的公众号迅速增粉

    我关注人民日报是从它的一篇“穷养儿、富养女”的文章开始的,当时的我就感觉这篇文章写得不错,也是时下我们这一代年轻人所要思考和面对的一个问题,文中提到“女孩富养,是从小培养她的气质,开阔视野,增加阅世...

  • CSS 重构:样式表性能调优

    我在此郑重向感觉自己缺乏软件工程知识和实践的朋友推荐本书,书中提到的方法能将你引向大路。互联网技术这个行当相对不那么看重各种背景,只要踏实、上进、肯钻研,再加上技术过硬,都能找到一个好去处。 我跟前端...

  • 这些年,我身边的那些人和事

     结果,第一个加群的人就这样被人肉出来了,这个人平时在群里几乎不说话,那一天,他毫无征兆的被N个人同时@,结果在几分钟之后,群主就收到一条群消息,消息内容是“某某某已经退群”,而这个人,其实才是真正的入...

  • 【知乎问题】如何让不懂编程的人感受到编程的魅力

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对...知乎问题:如何让不懂编程的人感受到编程的魅力? 链接:https://www.zhihu.com/question/406408447 Part..

  • 基于springboot大学生就业信息管理系统源码数据库文档.zip

    基于springboot大学生就业信息管理系统源码数据库文档.zip

  • 基于java的驾校收支管理可视化平台的开题报告.docx

    基于java的驾校收支管理可视化平台的开题报告

  • 原木5秒数据20241120.7z

    时间序列 原木 间隔5秒钟 20241120

  • 毕业设计&课设_基于 Vue 的电影在线预订与管理系统:后台 Java(SSM)代码,为毕业设计项目.zip

    毕业设计&课设_基于 Vue 的电影在线预订与管理系统:后台 Java(SSM)代码,为毕业设计项目.zip

Global site tag (gtag.js) - Google Analytics