软件测试工程师的修炼之道

发表于:2017-09-04来源:LP_ProgramLife作者:LP_ProgramLife点击数: 标签:
软件测试发展到今天,已经逐渐形成一门学科,但是还不够系统。初学者面对铺天盖地的资料应该如何选取?应该从哪里入手?如何迅速的掌握各种业务各项测试技能以便开展工作?

最近因为想转行做测试,最近看了不少关于测试的文章、博客、这篇文章是前不久看的,和大家分享一下,不知道作者和出处,这里就不标明,希望原作者原谅哈,主要勉励以后自己测试道路,有共同意向的一起加油哈!!!

软件测试修炼之道

前言

软件测试发展到今天,已经逐渐形成一门学科,但是还不够系统。

初学者面对铺天盖地的资料应该如何选取?应该从哪里入手?如何迅速的掌握各种业务各项测试技能以便开展工作?在保证测试质量的前提下,一日内编写或执行1000个测试用例是不是梦想?

入行多年者面对复杂的业务逻辑,海量的测试需求,如何在最短的时间内进行测试?如何尽可能更早的开展测试?如何对系统架构进行测试?如何全面提高测试质量与测试效率?如何百尺竿头更进一步?

本文将针对这些问题进行初步解答,主要阐述解决这些问题应该具备哪些能力及如何锻炼这些能力,至于实际工作中解决问题的具体操作步骤本文不做表述,可关注后续文章。前两章主要探讨一名合格的测试工程师应该具备哪些能力,对列举的能力将会做简要说明。第三章重点说明应该如何锻炼这些能力,此为本文的重点。最后一章是笔者对软件测试虚无缥缈杂乱无章的一些想法。

本文的读者群涵盖所有对软件测试感兴趣的朋友。

下面,我们开始。

第一章综合素质

笔者以为,作为一名合格的测试工程师,综合素质是最重要的,综合素质也就是我们常说的软技能,它代表着一个人的潜力有多大,未来发展有多宽广。核心素质有以下五点:沟通、分析、组织、学习、心态,下面将会分别阐述。

沟通

作为一名软件测试工程师,优先加强的应该是哪方面的沟通能力?是文字沟通能力。试想,如果连缺陷描述都无法准确清晰的用文字表达出来,还有开发愿意和你合作吗?特别是随着异地开发的项目越来越多,文字沟通的场景也会越来越多。

当然,口头沟通也很重要,通过面对面或者电话语音交流是很直接的方式,这也是为什么许多鼓吹敏捷开发的团队喜欢坐在一起的原因,认为这样会降低沟通成本。但事实上,真的在任何时刻都能降低成本吗?无效冗长的会议大家都参与过,这里不做深入讨论。

不知道其他人有没有这种体验,笔者偶尔在查阅测试用例库或阅读工作邮件的时候会忍不住哈哈大笑,语句不通错别字也就罢了,写的像聊天记录一样尽是口头语就让人很无奈了。

所以,这里首先强调的是提高文字表达能力,其次才是口头沟通能力。

另外要特别注意的是,沟通能力包含两方面,一方面是说(写),一方面是听(读),表达与聆听同等重要。笔者发现很多测试工程师表达能力不错,但聆听能力很差,有时候甚至忽略聆听。对方话没讲完就急匆匆的打断,即使听了两句也马上反驳对方,这是恶习,比抽烟喝酒打老婆还要恶虐。

分析

早期我们认为测试的唯一工作就是发现问题,在很多文献资料上均有类似描述。但笔者以为,测试发展到今天,单纯的发现问题已不再是测试工作的全部,测试工作应包含发现问题、分析问题、解决问题三个方面。发现问题以测试人员为主开发人员为辅,分析问题开发测试共同完成,解决问题以开发人员为主测试人员为辅。

在测试工作中每时每刻都需要用到分析能力,同时,分析能力是评估一名测试工程师是否优秀最重要的考核点。就像我们常说的缺陷预防一样,怎么预防?对已发生问题的产生原因能准确定位并把类似问题进行归类,对未发生问题能充分预知风险并准备应对方案,这就是我们追求的零缺陷,这些工作有不需要高度分析能力的吗?

再例如测试计划,我们做计划是拍脑袋乱猜吗?是掐指算命吗?肯定很多人回答不是,但实际上往往很多人就是这么做的。测试计划的制定过程是首先收集大量相关信息,然后抽丝剥茧在杂乱无章的信息中寻找到关键点并梳理清脉络,最终据此定出计划。我们说部分未来是可以推测出来的,就是这个道理。在做计划时会用到许许多多辅助分析的理论方法,这里就不一一阐述了。

艾森豪威尔有句名言:“Aplan is nothing,planningis everything.”Planning就是分析的过程。

原文转自:http://www.jianshu.com/p/0cde18be00ed