在国内,软件测试走过了一段崎岖的发展之路。从不被重视,不设置岗位,变成目前越来越被重视,招聘市场越来越火热,高校也纷纷开始设立软件测试专业,重视软件测试。现在互联 +的时代,卖方市场不存在了,各个软件的竞争已经是资本与市场的白热化反映,没有任何一个产品敢“爱用不用”了,毕竟市场推广成本都不低,如果因为软件的质量不好被客户放弃,损失还是比较惨重。
引子
目前的市场,以深圳为例,根据职友集的统计,最近30天,软件测试的招聘市场需求岗位为32766,为软件开发职位的两倍。从这里我们可以得出:软件测试人员的职位缺口大。然而目前市场上的软件测试人员能力参差不齐,高水平的候选缺乏,大量的初级水平的候选充斥市场,导致人员基数大,市场需求大,招聘难度更大。所以更现实的有效的方式,应该是提升初级水平的软件测试人员的能力,更多的软件测试人员达到高级甚至资深的层次,实现个人,企业和行业的三方共赢。
这里我们来聊一聊软件测试的能力矩阵,从技术能力、项目能力和业务能力三个维度,分别讨论从初级到高级到资深水平的能力值。
技术能力
技术能力体现的是对技术手段的运用能力,在软件测试过程中制造和使用工具的能力。
站在进化论的角度,能够制造和使用工具,是早期人猿进化成人类的分水岭,当然也是区分人类与其他动物的本质区别。当然在软件测试中,能够制造工具,使用工具,也是衡量软件测试人员的技术能力的基本标签。
严格的讲,不会使用工具的软件测试人员是不存在的。哪怕纯粹“确认眼神”的手工测试,至少能够使用Windows操作系统吧,至少能够使用浏览器吧。这些都是算工具的。
这里我们以下面的几个因素来衡量软件测试人员的技术能力:
- 操作系统:使用操作系统是基本能力,尤其是服务器端的Windows Server与Linux。
- 浏览器:目前主要的大众软件的运行场所,离不开浏览器。但是真正用好浏览器的软件测试人员,事实上并没有那么多。
- 项目工具:国内常见的有禅道、TAPD(腾讯敏捷平台)等,以及还有国外的JIRA、ALM(HP QC)、Tuleap、Rally、QA Complete,还有企业自主开发的,功能类似,目前大多集中在敏捷(Agile)的处理上。
- 测试理论:这个毋庸置疑,软件测试的系统理论,决定了很多人员的职业发展高度。
- 测试工具:从普通UI功能、自动化测试,到接口契约测试、性能测试、安全渗透测试等各种工具的使用,无论商业版还是开源版,都是体现测试人员能力水平。尤其是能够综合现有工具(开源版)而构建出符合企业要求的定制测试方案,就更为重要。
- 编程工具:编程是目前的软件测试人员普遍欠缺的一部分,编程并不是为了去研发出产品,像开发人员一样,而是作为几乎唯一一种人类与机器交流的方式,如果需要机器做更多事情,那么必须掌握能与机器沟通的语言。编程语言是很好的途径。
- 学习方法:IT行业是持续发展的行业,技术的更新很快,那么需要持续不断的学习,对于新的知识、工具、方案等能够很快的学好,上手使用并创造生产力,非常关键。
让我们来看看各个级别的软件测试人员对应的矩阵。
项目能力
项目能力体现的是对IT项目管理的适应能力,能够在实际项目中体现自身的价值,帮助项目团队交付高质量的产品。
项目能力往往是靠单独学习得不到的,必须经过长时间的实践、总结,来提升自己。笔者见过很多“十年如一日”的软件测试人员,其实相当悲观。工作十年,积累的的项目能力相当于第一天的水平,夸张了点,但是确实很多类似的人员。
我们列出来项目能力的指标与因素,帮助更多的从业人员有更好的方向,避免“十年如一日”的产生。
这里我们以下面的几个因素来衡量软件测试人员的项目能力:
- 测试流程:测试的工作流程,是只能够“执行”,还是可以“驱动”li>
- 项目流程:适应项目组的工作方式以及项目驱动方式,常见的有“瀑布”与“敏捷”。
- 项目理论:在项目管理方面,是否有更好的理论基础,了解软件生命周期,了解敏捷开发li>
- 任务估时:能够准确的评估自己的工作能力和用时,是一个非常重要的指标。
- 项目并行:同时处理的项目,如果永远都是一个,那么说明你的项目水平还是有欠缺。让我们来看看各个级别的软件测试人员对应的矩阵。
业务能力
业务能力体现的是对用户故事(需求)的分析和理解能力,能够充分的理解产品的业务流程,通过对业务流程的分析,勾画用户使用行为,确认验收标准。
或许有的小伙伴会质疑,为什么要考虑业务能力有需求分析师(BA)么有需求说明书(SPEC)么p>
一位合格的软件测试人员,应该能够合理的,快速高效的分析需求,对需求的分析与理解能力和层次,决定了你的工作高度,不是么只能够停留在“输入框”与“是不是好看”这些方面,那么你的测试层次,就只是在入门的层面哦你的工作,是不是你爸妈也可以替代呢p>
这里我们以下面的几个因素来衡量软件测试人员的业务能力:
- 需求分析:基本功啦,测试的双V原理(验证做正确的事情,验证正确的做事情),如果你不会需求分析,如何知道需求是否是“正确的做事情”呢极恐呀。
- 流程分析:没有流程,就没有测试,是这么个道理吧。
- 文档能力:有没有发现,会写文档的小朋友,领导都喜欢建议学会Markdown语法与工具,增加文档的技术含量。
- 数据分析:最后这条,其实是从软件测试人员,迈向软件测试管理人员的必经之路啊。让我们来看看各个级别的软件测试人员对应的矩阵。
总结
上述的三个维度,我们简单的阐述了软件测试的能力矩阵,其实不难看出,解决问题的能力尤其重要,在每一个维度中,资深级别的描述,都具有很强的解决问题。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!