正常情况下,有了四年的测试工程师经历,应该可以达到中级测试工程师的水平了。作为一个初中级测试工程师下一步是转开发还是继续做测试,个人建议是做测试开发(简而言之就是懂开发的测试)!
继续做测试吗?
这里所说的测试只指普通的“手工测试”,如果只是做普通的手工测试,每天工作的内容不过是“点点点”,想拿高薪是不太现实的。即使累积了工作经验,但是自己的技术水平还是停留在初级测试工程师的阶段。并且随着年龄的增长你会发现你越来越没有了竞争力,比你年轻、有活力、更能加班、性价比更高的测试工程师分分钟就可以把你给取代了。可见这条路是行不通的…
转行做开发可以吗?
能不能转行做开发要根据自身的实际情况而定,那什么情况适合转开发?什么情况又不太适合呢?
如果说自身编程能力比较强、又对编码比较感兴趣,完全是可以转行做开发的,并且做开发之后会对程序底层实现原理理解的更加深刻,再加上做测试时比较严谨的做事风格,可以让代码实现时考虑的更加全面和细致。
如果说已经做了四年的测试工作了,却没有积累测试脚本的编程经验,那么也可以认为目前是处于没有任何编程经验的阶段。在这种情况要不要转行做开发就需要慎重考虑了,因为你不知道自己的编程能力、逻辑思维能力处于一个什么样的水平,而且做开发每天都是要涉及到编码的,你也不确定将来对编码是否感兴趣。假如说目前确实是这样的一种情况,那又应该怎么选择呢?建议继续向下看…
为何考虑测试开发呢?
1、什么是测试开发?
测试开发简单来说就是既要会做测试又要懂开发。猛地一看,那岂不是压力更大了吗?!不不不,因为在测试岗位中应用到开发技术要比开发岗位中应用到的开发技术要简单很多(除非一些特殊场景)。
从风险角度来考虑,从测试转向测试开发要比直接转开发的风险更低。因为从测试转向测试开发可以慢慢的过渡,比如说你可以先学习一种编程语言,然后再学一个UI自动化测试框架,这样就可以开始做自动化测试的工作了,做的过程中也培养了自身的编程能力,甚至也可以检验一下自身是否真的适合编程。如果确实编码能力挺好,又对编码比较感兴趣,那么就可以向纯测试开发的方向发展。
2、为什么说测试开发重要呢?
试想一个对开发完全不懂的测试人员,就不可能深刻理解系统实现逻辑,那么想要把软件存在的问题都测试到位是不太现实的!所以市场有大量测试开发岗位
打开BOSS直聘、智联招聘、拉勾等招聘平台,我们可以看到有很多测试开发的岗位。如果说测试开发不重要的话,那么为什么那么多公司都在招测试开发的员工呢?
3、为什么说测试开发能拿高薪呢?
测试开发岗位对软件测试工程师有更高的技能要求,不仅要有测试的技能,还要有开发的技能。永远都要相信当今社会不缺少高薪的岗位,只是缺少能拿高薪的人才。
目前测试开发的工作主要包括测试工具的开发、测试平台的开发、测试框架的搭建等。这些工作都能够服务于普通的测试人员,提高测试的效率,给公司创造价值。
一方面测试开发市场稀缺,一方面确实能为公司创造价值,导致了测试开发薪资工资非常高。
如何走向测试开发
如果想从一个手工测试工程师转向测试开发工程师,可以参考以下的学历路径。
1、先学习编程语言,然后再接触自动化工具。
语言选择上Java或者Python都是可以的,可以先从Python入手,之后再开始Java。在学习语言的过程中,一定要忘掉你是做测试的,把自己当成开发,系统的去学相关的编程知识,因为语言水平的高低,很大程度上就决定了自动化水平的高低。
2、打好基础,而不是本末倒置的学习自动化测试工具不理解http协议,就不会理解loadrunner、fiddler、soapUI这些工具;不理解HTML,就不会理解firebug。所以基础打好了,才会事半功倍。
3、清晰的认清自己,明确自己的目标说白了,咱干什么事情之前肯定要先看看自己有几斤几两对吧,先评估一下自己现在的能力水平,然后再看下自己能够投入什么样的资源(精力、时间、资金)去学习,这样才会知道什么样的内容自己能够搞明白,哪个阶段要请教大牛,别整到最后越学越迷茫;其次就是认清自己能力之后,就要给自己定好合理的目标,多长时间达到什么样的水平。
4、选择好切入点,设计好对自己帮助最大的方案接口自动化:
Python+Unittest+HtmlTestRuner+Jenkins和Java+Httpclient+TestNG+Jenkinsweb自动化:
Python+Webdrver+HtmlTestRunner+Jenkins,Java+Webdriver+TestNG+JenkinsAPP自动化:
Robotium+Java+TestNG+Jenkins,Appium+Java+TestNG+Jenkins,Appium+Python+HtmlTestRunner辅助测试脚本:以Shell,Python为主来简化重复的工作,过滤日志等当然这些都是基本的实现方案,别的先不介绍。如果刚开始接触,我建议是选择语言之后,然后从接口测试入手,然后再学习web和APP自动化。
5、贪多嚼不烂,学会举一反三新手上路,容易着急,啥都想学,这样就容易混淆,也不好消化。很多地方都是相通的,代码架构、用例管理、等都可以举一反三,既可以提升你的学习效率,也不会混淆。最重要的是不能纸上谈兵,一定要动手去实践。
6、不要受限于工具,多用开源在测试行业,自动化测试工具有很多,但是大公司趋向于用开源的框架和工具,然后定制适合自己的测试方案。学着用一些开源的例如Webdriver, Appium等去搭建自己的自动化测试工程,然后掌握整体的自动化工作原理,为以后能够搭建自己的工具平台做准备,毕竟搞定自动化,可不是会使用几个工具那么简单。
创作不易,如果此文章对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
—测试资源免费获取~~