软件测试和软件开发哪个更好?

自媒体运营教程 308 0

经常有想转IT行业的同学,在了解软件测试和软件开发之后不知道转那个岗位好,今天就系统的,从多个维度来比较软件测试与软件开发,希望能给在选择软件测试与开发朋友一个相对全面的解答。

一、【入职门槛】

【软件测试】:客观上来讲,进入软件测试领域的方式更多,但不是入职门槛更低,比如有些人可以通过行业知识背景进入软件测试领域,具体比如金蝶、用友都有不少测试工程师是学财务的,而不一定是学计算机的。甚至有些人可以通过性格和基本素质进入软件测试领域,比如微软以前招过家庭主妇做软件测试。不是微软不重视测试,实际上微软比任何软件企业更重视软件测试,在微软所有产品里面,测试工程师比例比开发是要高的。还有些是从软件开发工程师转型做软件测试,所以进入软件测试领域的方式很多。正是因为方式多,就给人造成一种迹象是入职门槛低。还有从现状的角度来看,因为需求的因素,企业不经意间降低了对软件测试工程师的要求,但是这个是饮鸩止渴。很多企业慢慢发现了这个问题,所以说,以后测试工程师的要求会越来越高。

【软件开发】:客观上来讲,进入软件开发领域方式相对较少,但也不是入职门槛更高,因为,在印度高中生都能编程。实际上掌握一门开发语言的语法,掌握一个开发平台,就可以做编码了。尤其在成熟的开发企业如此。但从学历的角度来看,高中生要想做软件测试还是非常困难的。只是因为,开发工程师必须要学一门编程语言,所以表面上看起来要求更高,还有一个因素是受传统因素的影响,做软件开发的人相比软件测试的人多很多,所以从竞争压力上来看,要求就更高了,是比较出来的高。

二、【转行难度】

【软件测试】:比如有金融背景、财务背景、物流行业背景、证券背景、电子商务背景、移动通信背景等等。同时年龄在35岁以下,转行测试会比较合适。经过专业知识学习,结合行业分析加上有经验的人得指导。转行的难度还是比较小的。可行性还是比较高的。因为可以利用好自身的过去的一些东西。

【软件开发】:转行开发的角度来看,很难只靠基本素质和性格特点就轻易地转行,这个难度比较大,从过去的知识背景的角度来看,转行开发比较难以利用上。所以过去的经历对于转行开发几乎没有帮助,从这点来看,要转行开发,就必须接受从零开始,所以,年龄超过25岁,有过两年以及以上工作经验的人,不太合适转行开发。因为要浪费两年的工作经历。

三、【知识结构】知识结构决定职业发展,知识结构决定行业发展,包括未来职业规划的考虑,下面从一个优秀的测试工程师应该具备的知识结构来对比软件测试与软件开发。

相关影片资源迅雷下载推荐

特斯拉Model系列分期购车攻略方案来了

亲身经历给车友们分享下:特斯拉的新一轮降价,最高降307万左右,ModelY后驱版也降回30W以内,这对于准备购车的车友是个好消息,虽然车价下来了,但是贷款的费率却没动,这对于准备分期的车友来说还是不小的压力,下 ...

分享购,特斯拉Model系列分期购车攻略方案来了

【软件测试】:一个优秀的测试工程师需要的知识结构,从全面性角度来看,包括如下几个方面,第一是计算机知识,包括编程语言,掌握至少一门开发语言,比如c、java、C#等,一门脚本语言,比如Tcl、python、Perl、Ruby、Shell中对于测试工程师未来更广的职业发展非常有帮助。数据库知识,虽然并不是所有的测试工程师都需要掌握一门数据库,比如做移动互联网的,对数据库要求相对较低,但对于大部分大型项目,都会有数据库,所以掌握至少一门数据库,比如Oracle、DB2、Mysql等。另外操作系统,比如Linux、Unix核心命令也非常重要。

对于有些涉及到网络的,网络和通信知识,比如Tcp/IP协议也非常重要。另外数据结构、软件工程等其他计算机知识也最好也具备。第二部分是软件测试核心技术,掌握软件测试核心的方法论,具体包括软件测试需求分析与软件测试用例设计核心工程方法。掌握主流的软件测试工具,比如性能测试工具LoadRunner,自动化工具典型代表QTP,测试管理工具QC、开源测试管理工具Testlink、Bugzilla、Bugfree、Jira等。掌握核心的研发流程,比如RUP,测试流程,比如双V模型,或者是现在流行的敏捷测试等,也是同样重要。方法是秘笈、工具是兵器、流程是套路。虽然测试好比武术,棍术好比黑盒测试,剑术好比白盒测试。不同的武术对知识结构要求是不一样。这个也是前面讲到的进入软件测试领域的方式相比开发要多的原因之一。第三个部分是行业知识与背景,这个对于有些行业而言,非计算机专业的人会有些相对的优势。

【软件开发】:一个优秀的软件开发工程师需要的知识结构,从全面性角度来看,包括如下几个方面,第一也是最重要的是精通至少一门编程语言语法,比如Java、C、C++、C#等,至少熟悉一个开发平台或工具,跟具体开发语言对应的平台,比如Eclipse、Netbeans、VC等。熟悉一门数据库,比如Oracle、DB2、Mysql等,熟悉操作系统,比如Linux、Unix包括相关的编译环境,比如gcc等。熟悉软件工程、熟悉算法、数据结构。这个方面可以多看看,设计模式方面的书籍。第二部分是英语,英语对于做好软件开发也有非常大的帮助,因为开发平台和环境都是英文为主。英语也有助于帮助理解一个编程语言的语法。

四、【竞争压力】竞争压力的分析有助于帮助我们选择,选择大于努力指的是,同样花5年的时间,所能达到的不同的程度。竞争压力的大小取决于行业发展现状。行业越成熟,竞争压力越大。

【软件测试】:软件测试的发展史相对于软件开发来看,相对来说是不太成熟的,尤其是在中国。从很多猎头招聘网站来看,想招一个10年左右测试经验的人,很难。原因是真正意义上软件测试的兴起基本上在2000年左右才开始。发展到今天,软件测试从业人员和软件开发从业人员的比例相比国外成熟的1:1的比例还是相差甚远。所以相对来说,竞争的压力相对较小。严格意义上来说,软件测试在中国的情况,还是乱世,所以乱世出英雄。另外,很多企业已经意识到软件测试对于软件质量的重要性,很多的软件事故迫使企业真正思考测试的核心价值。所以客观上也导致了,软件测试需求在增加,虽然对测试工程师的要求越来越高。

【软件开发】:软件开发的发展史相比软件测试来看,相对来说还是比较成熟的,虽然相比印度等软件大国来看,远不如别人成熟。软件开发在2000年左右的时候很火,曾经有一句口号是“学好C++,走遍深圳都不怕”。当时的深圳严重缺少C++人才。但现在市面上其实不缺少初级的开发工程师了。因为初级的已经相对饱和了。另外做开发,如果3年时间内都只是做编码的工作,也会遇到职业瓶颈。另外从学习的角度来看,开发平台和语言的更新相比测试平台还是要快一点。所以客观意义上也导致软件开发的压力大些。另外在同一个企业里面,正常来讲,开发加班会比测试加班要多。

五、【职业发展】关于职业发展,其实测试与开发的职业发展在有些方面是一致的,比如将来都可以往管理方向发展,也都可以考虑往需求分析方面发展。甚至也都可以往咨询和培训服务方面发展。这些是他们的共同点。

【软件测试】:前面讲到过,软件测试从综合素质等角度来看,要求比软件开发要更全面,这也直接导致了,软件测试的职业发展路线要广于软件开发,在测试技术领域,可以从测试执行工程师、测试设计工程师、测试系统工程师、测试架构工程师、测试专家这个道路晋升,也可以走比如自动化测试、测试开发、性能测试、易用性测试、安全性测试等专项。另外从管理的领域来看,可以从普通测试工程师,测试项目经理、测试主管、测试经理、测试总监、大部门测试总监等晋升。另外从外围IT职业,测试还可以走行业测试专家,比如金融领域测试专家,项目管理、软件测试咨询与培训等、软件质量保证(SQA)、软件销售、技术支持等只要是IT领域的职位都行。

【软件开发】:软件开发的职业发展其实也比较广泛,在开发技术领域,可以从软件编码、软件设计与架构、软件需求等领域晋升。也可以从普通开发工程师、开发项目经理、开发经理、开发总监或者研发总监等晋升。另外也可以转型来做测试,通过学习测试关键技术,来做测试领域的测试开发。但从外围IT职业,开发相比测试能走的相对还是要窄些,很难走行业专家,除非先走需求分析,最后走行业专家。所以,有时我们不仅仅是要埋头干活,也需要抬头看路,另外,人生没有捷径可走,但要懂得借势而上。如果你对你的职业不满意,转行是一种选择,树挪死,人挪活。只是在挪的时候,分析下自己,因为你可以改变你自己。分析下外部的环境,因为你需要去适应环境。在此基础上,可以进行一些可靠性,容错性,兼容性等用例的设计,测试下软件的稳定性。35岁中年危机大多是因为被短期的利益牵着走,过早压榨掉了价值,如果能一开始就树立一个正确的长远的职业规划。35岁后的你只会比周围的人更值钱。

相关影片资源迅雷下载推荐

怎么进入游戏开发领域?

题目不太现实,大概想问是以下:本人高中学生(关于游戏开发完全零基础,也没有什么美术底子),有一个想要开发游戏的梦想,未来希望有朝一日能制作属于自己的游戏,或是开一个工作室和志同道合的伙伴们一起制作游戏 ...

游戏开发,怎么进入游戏开发领域?

企业网站建设与开发最低只要299元起,包含域名服务器,需要的联系QQ345424724,电话15516990022,18530226930

标签: 软件开发 软件测试和软件开发哪个更好?

抱歉,评论功能暂时关闭!