到底是选开发还是测试?

很多同学在培训前,都会问是选择开发还是测试,测试是不是门槛低、太简单,以后没有什么发展?本文就带着大家一起分析,究竟是选择软件开发,还是测试,开发和测试的区别又是什么,选择的依据和关键又是什么,如何做决定。

开发和测试的区别

这里的开发指的是软件开发工程师岗位,根据工作内容的分工,有前端开发和后端开发,全栈开发。根据所使用的技术和平台,又分为Java, C++, PHP, .Net, Python, Go, Android, iOS… 开发工程师。还有数据库开发,嵌入式开发等等。

软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。软件开发一般分为四个步骤:需求、设计、编程和测试。

软件开发工程师是从事软件开发相关工作的人员的统称。 软件开发工程师的技术要求是比较全面的。

所以大多数同学问是实际上编程(coding)和测试(testing)的区别。编程(coding)就是编写一定的代码,让计算机来解决某个问题,使计算机能够根据人的指令一步一步去工作,完成某种特定的任务。测试(testing)是检验软件系统是不是满足规定的要求,找出与预期的差异,并且跟踪和修复的过程。

从工作内容上,简单一点来说,编程开发就是创造和实现功能,软件测试就是检验、检查这个过程中有没有什么缺陷和遗漏。

看完这个说法,绝大多数同学肯定会选编程开发,创造性的工作多好啊,觉得软件测试比较简单,low一点,果真是这样吗?

测试是不是很low啊

在一些同学的看来,软件测试就是在那里点点点,没有什么技术含量。要选IT互联网行业技术岗位,也得先开发。

应该说,软件测试入门相对容易一些,不像开发那些对技术要求的那么多,那么深。如Java开发工程师需要掌握的有:HTML基础,JavaScript基础,数据库,JavaSE,JavaEE,轻量级框架(SpringMVC, Spring, MyBatis, Hibernate…)

中高级的测试工程师的要求还是比较高,也有一定的难度和挑战,有些还需要有相当的开发基础和开发经验才能胜任。

测试中高级

测试开发工程师,2年工作经验的基本上薪资都在15K+。

测试开发工程师
测试开发工程师

然学科技软件测试课程就是定位于测试开发工程师,测试中高级的岗位和职位,课程内容包括:

  • HTML前端开发
  • 数据库
  • Java语言
  • 测试理论
  • 测试方法和工具
  • 自动化测试
  • Linux Shell
  • Python语言

另外,测试工程师,对沟通表达能力,管理和协调的能力要求比较高,职业发展的路径更宽阔一些,管理路线上升到测试经理,产品经理等,技术路线可以发展为中高测试工程师、资深测试工程师、测试总监、测试架构师等。

从学习的角度来说,选择编程开发,学习难度会大一起,学习周期长(4~6个月),费用也相应要高。

开发和测试到底选哪个?

选择一个行业方向,一定结合自己的实际情况,和当下的状况来权衡。

1)如果你是计算机、软件工程专业,可以选择编程开发方向。
2)如果你还是大三大四,建议你可以先自学,选择开发。
3)如果你学习过C/C++,对指针掌握得不错,可以选择开发方向。

反之,如果你:
1)想快速进入到IT互联网行业的岗位,
2)有一定的经济压力,迫切希望改变,
3)学过编程语言,觉得还是有一定难度。

软件测试都是一个非常不错的选择。对女生来说更是。

另外,也不是说做了软件测试工作,就接触不了代码,或者转不了开发,首先自动化测试就是要写一定的代码、脚本,其次,测试开发工程师,对代码的要求比较高,再者,测试和开发都在一个项目组内,以后学习的机会多的是,只要你肯学勤学。

另外工作的角度来说,一般刚刚培训出来的同学,做开发的话很难进到大公司,如腾讯、华为等等,但是做测试,刚学完一般都去大公司,或比较大的公司。这个看一下然学科技同学入职的公司就知道。

无论是开发,还是测试,都很不错(选择编程开发的话,还会涉及到选哪一个技术方向,这个暂且先不谈)。适合你的就是最好的选择,能让你拿到满意Offer的就是最明智的选择。

谢谢阅读,感谢支持~