一提到IT行业,大家首先想到的程序员,开发,编程,码农之类的词,似乎对软件测试知之甚少,甚至对软件测试工作的理解有很大的误区,作为在IT行业摸爬滚打多年的小编,和大家一起分析一下现在社会对软件测试的错误理解。
1、软件测试技术含量不高?
在顶测科技学完软件测试,上岗就能匹配到7,8k,工作1年过万工资的工作,你能说它没有技术含量吗?如果没有技术含量,企业怎么可能会高薪聘用?所以这是个很现实的问题,软件测试肯定是具备一定技术含量的。
2.和开发相比,软件测试技术含量不高?
一些计算机专业的毕业生因为大学没有认真学,所以毕业找工作时大家会首选软件测试。但毕竟开发和测试是两个不同的岗位,做得了开发的不一定能做测试,做测试的也肯定做不了开发。所以两者完全没有可比性的。
前几年国内普遍存在着“重开发、轻测试”的现象,甚至在很多互联网公司里,根本就没有软件测试岗,产品上线前纯靠开发和非专业人员的内部测试,这也造成了很多产品在上线后出现各种问题,从而半路夭折的事件。
根据这些情况,开发给大家留下了技术强,地位好、薪资高的印象。因此在这种环境下,软件测试很不受重视,相关人员的地位和待遇自然也比不过开发,甚至软件测试变得可有可无。
可最近几年随着软件行业的日渐成熟,用户对产品的体验感、安全性更加关注,各大企业对产品的重视度也越来越高,软件测试变得越来越重要,相应的软件测试人员的地位和待遇也在逐渐提高。在微软、谷歌等规模比较大的公司里,软件测试人员的数量和待遇与程序员没有多大差别,优秀测试人员的待遇甚至比程序员还要高。
另外,从个招聘网站发布的缺口数据中不难发现:相比开发日趋饱和、竞争激烈的现状,软件测试仍会长期处于蓝海状态。
3、软件测试是在产品完成之后才需要做
一个项目的完成,基本要经历需求分析、概要设计、详细设计、软件编码、软件测试、软件发布这几个阶段。
大多数人都认为测试只是软件开发过程中的最后一步,不需要Care前面的种种工作, 其实并非如此,软件测试是一个系列过程,包括软件测试需求分析,测试计划设计,测试用例设计,执行测试等等。因此,软件测试贯穿于整个软件项目的生命周期里,对其每一个阶段都要进行不同目的和内容的测试活动,以保证各个阶段的正常使用。
4、项目上线后,如果出现问题,责任是由测试承担吗?
软件中的错误可能来自软件项目中的各个过程,软件测试只能确认软件存在的错误,不能保证软件没有新错误的出现,因为从根本上讲,软件测试不可能发现全部的错误。
从软件开发的角度来看,软件的高质量不是软件测试人员测出来的,是靠软件生命周期的各个过程中设计出来的。出现软件错误,不能简单地归结为某一个人的责任,而是应该分析软件项目的各个过程,从过程改进方面寻找产生错误的原因和改进的措施。