软件测试人员的价值核心技术在哪?

最近51testing上面讨论得热火朝天的一个帖子:软件测试人员的核心技术在哪?价值在哪?

下面是看到的一个我认为写得非常不错的一个回答,摘录和在测试路上的同行共勉。

我认为测试的核心价值是:测试用例设计能力+发现问题的敏锐目光+bug的分析能力+良好的测试技术+良好的沟通能力。

我认为一个优秀的测试工程师应该具备这以上几个核心的价值。

具体说明:

1、测试用例设计能力。这点和Jack大牛说的一样,其他人也说得很多了,略去

2、发现问题的敏锐目光。如果是白盒测试,看到同样一段代码,开发同学只想着正常数据输入,程序会得到正常输出;而测试工程师会想到正常的输入、异常的输入(根据业务而来的)。如果是黑盒功能测试,比如Web测试,同样看到一个页面,测试工程师是可以比开发工程师更快速地发现这个页面展示问题、功能问题的。如果是性能测试,当得到一个性能测试结果,比如响应时间是多少、TPS是多少,测试工程师应该清楚地发现该指标是否正常,性能是否符合要求,因为我们有对其他类似模块测试的经验,比开发对我们的整个系统、整个网站的总体情况更加熟悉(有的公司,开发工程师的负责的模块相对固定,面比较小,而测试工程师会测试整个系统,测试很多模块)。

3、bug分析能力。一方面,是bug的定位能力,发现一个错误的现象,可以很快预测问题的原因出在哪里,可以在提bug时,建议开发工程师从哪个方面去查原因;另一方面,是指我们可以根据发现的一个bug,预测模块中类似bug的出现几率,可以有意对相应的功能进行测试,可以快速找出潜在的bug;还有一个是,分析一个项目或者某一阶段的bug数量、bug类型、bug趋势等,给开发工程师提出建议,希望他们从哪些地方可以在开发中就避免掉一些bug,也可分析出项目的整体质量情况和趋势,供项目经理、研发主管、测试主管、产品经理参考,方便他们分配人力物力、制定项目和产品的一些战略。

4、良好的测试技术这里并不是一定要和Java工程师比Java编程,也不是跟研发架构师比系统设计,我想说的是,我们关注测试相关的技术能力。当然具备基本的编程能力,应该是一个优秀测试工程师的必备条件。测试技术方面,我们可以做的更好,比如说,(以身边实际为例,我们做Web应用的测试,对于的开发是Java Web开发工程师,Web系统部署在Linux服务器上),Linux系统的使用可以比开发熟悉,通过写一些测试环境脚本,可以比开发更快速地部署Web 应用测试环境,可以比开发更熟悉写OracleSQL语句,可以比开发更熟悉地使用Firefox的一些插件来进行Web测试,可以比开发更熟悉自动化测试工具的使用(不少开发工程师认为自动化测试有些神秘),可以比开发了解更多的单元测试、性能测试的理论、工具盒方法,可以比开发更了解JVM机制和操作系统原理,在性能测试分析时也能比多数开发更有思路。

5、良好的沟通能力。这个可能和人的性格也有关系,不过沟通能力在项目中确实非常重要。一般来说,测试工程师比开发工程师人数要少,一个测试工程师接触到的业务模块更多,和人员(包括:PD、Dev等)沟通的也更频繁,良好的沟通能力也会得到更多地锻炼。而且现实中确实有一部分开发同学是比较内向的性格,比较少和开发同事之间、PD同事之间沟通。如果我们沟通能力更强,无疑在项目中,也是会对项目起到积极的作用。

当然,也不是说,在职业发展上,测试会比开发更好,其实我本身也不这样认为,但是,有一点,既然加入了测试这个行业,就应该努力做到优秀,努力提升自己的核心能力,也是会得到研发和测试团队的认可的。

PS:说到受不受重视,一方面得看研发那边老大的风格和观念,另一方面,也是我们的测试工作到底有没有做好(我们确实做得很好,把结果和数据展示出来,相信研发老大及工程师们对测试的观念还是会慢慢变好的)。目前,大公司对测试还是比较重视的。

原帖地址如下:51testing

《软件测试人员的价值核心技术在哪?》有0个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注