JavaEE+互联网分布式开发 开班进行中

小班授课、专家坐镇、真实项目
现在报名,与名师面对面

立即咨询

工作多年的测试人时常陷入这几个的软件测试误区,你中了几个?


对于软件测试误区以下仅是个人观点。有不同想法的朋友欢迎留言讨论。

一、测试就是保证软件无故障运行

对于这个观点,我只想说这只是出于测试人员的美好愿望与期盼。在实际工作中,即使是再牛的测试人员也不可能保证所测的软件就能无故障运行。只能说在他所测试的范围内,软件能够按照预先定义的需求去运行。

在这个误区的一个潜在问题是,这一观点的测试人员可能更期望自己的测试对象能毫无障碍的“顺利”运行,而不是更多的去发现产品中的问题。

请点击此处输入图片描述

二、测试的环境就选用户的环境

对于这样一个问题,第一反映是:不可能!

或许对于一些有固定的用户,特别订制的特定环境下的软件产品,能够很准确的找到用户的环境。

但是对于大部分的软件产品来说,即便你知道了用户1的环境,你也不一定搞清楚用户2的环境。即便是同一个用户,他今天和明天的环境也不一定相同。那么,这种情况,你选择哪个环境做你的测试环境呢?

针对这个问题想说的是用户的某些典型环境可以在测试中进行优先考虑,但真正的测试环境永远应该是那个你认为能更好暴露产品问题的环境。

请点击此处输入图片描述

三、测试自动化更为高效

讲真,对于这个观点持保留意见,虽然所有人都在讲使用自动化测试更好,但手工测试有它存在的优势。

这里是拿自动化测试和手工测试作为对比的。也许自动化有诸多的优点,比如能够不厌其烦执行枯燥的动作;能够精确的定位时序动作;能够长时间工作;能够快速执行等等。

不过自动化测试的缺点也是有的,比如需要开发成本;需要对产品行为的明晰定义。

说到这,也就是说采取测试自动化是有条件的。并不是它就一定适应你的测试,如果不适用于你的测试,何谈高效。其实自动化测试更多的是应用在回归测试场合,更多的bug事实上是在手工测试中发现的。虽然这个事实不一定是你希望看到的:)

请点击此处输入图片描述

四、开发人员更适合做测试

测试圈内的一个共同认识:“从事测试的人员技术上总比开发人员差,开发人员能更好的应用技术去测试;开发人员更能了解开发,所以更能了解问题的所在”。

不过根据实际的经历,开发组转过来从事测试的人员绩效并不怎么理想。

这个误区的问题在于过于简单的看待测试的技能需求。

一般而言,测试工程师需要三维的技能:技术,业务领域知识和软技能。其中技术不仅仅只包括开发,还包括测试技术。从开发转作测试的人员,不一定具备测试这些能力,反而从某种程度上来说,他们更专注在开发技能,可能更喜欢工具的实现和代码的审核。

从整体上来说,开发人员的技能并一定就能完全胜任测试工作。

请点击此处输入图片描述

五、Bug越多测试越有效

对于这个观点,估计很多的经理都比较认同,很多同行也深受这个指标考核之苦。不过,如果打个不恰当的比方,说:GDP越高经济越有效。我想很多人也就明白个大概了。

Bug的出现有多方面的因素,并不一定需要多有效的测试。

犹如上策伐谋一样,有效地测试最好将bug消灭在未成的时候,也就是需求分析阶段。对产品报bug的时候已经是到了最后的保障环节,成本已经相对与需求分析和设计阶段变的非常高——相对于需求分析和设计阶段。

总结

虽然以上阐述的是测试者常常陷入的误区,但是不能够否认的一点是,自动化测试在市场上要比手工测试更受欢迎,如果只是一名普通测试,你的薪资可能在3k-6k之间,但是如果是一名高级测试人员的话,薪资便在8k+,当然,这里的坐标是北京。所以,掌握的知识越多越好,这种情况,若能从容应对市场的需求也就不用担心薪资的问题了。