当你学完软件测试基本理论,掌握业务测试流程,功能测试能够搞定,数据库和linux玩的也很溜时,接下来想进一步进阶,那么学习一门编程语言必不可少。
java
同时,学习一门编程语言也是你成为自动化测试工程师乃至测试开发工程师的基本准入门槛。目前,编程语言五花八门,好比不少人大学会学的面向过程C语言,面向对象高级语言java或者python,更为方便的脚本语言shell等等。
python
对于测试行业来讲,绝大多数从业者都会选择两门语言进行学习,就是java和python。不少培训班也会选择这两门语言做为主要语言进行教学,好比各类java/python全栈自动化等等。linux
测试行业学习编程语言的用途主要就是用来作自动化测试,好比java技术栈使用httpclient,testng,gson,poi,xstream等框架结合公司业务实现一套覆盖公司绝大部分接口的自动化测试框架,而后将代码部署到jenkins实现持续集成,天天定时执行,将执行结果发送到邮箱,以及上线前进行回归测试等......web
这样作的目的主要是用来监控哪些接口服务或者环境挂了以及版本更迭中修改代码可能会影响关联到其它接口致使异常,因此通常上线前要把公司或者部门全部接口所有自动跑一遍,以便于测试人员第一时间发现问题,并交给开发人员进行修复解决。shell
除此以外,学习编程语言还能够编写一些测试工具用来提升整个测试团队的工做效率。这个通常是大厂测试开发工程师的主要工做职责.....中小公司为了节约成本,通常会选择相对成熟的工具直接进行使用,而不会本身投入大量人力进行研发.....数据库
对于工做多年的从业者来讲,同时掌握java和python两门语言再好不过,能够大大增长找工做时的选择范围。可是对于转行的人或者初学者来讲,刚开始应该选择哪门语言进行入门呢?编程
首先,不建议新人同时学习两门语言,这样会致使每一个都是浅尝辄止,反而不利于语言的深刻学习。语言自己无优劣,只不过是实现目的一种工具手段而已。编程思惟和解决问题的思路方法都是相通的,当你熟练掌握其中一门语言时,也能够快速掌握另外一门语言。后端
下面来聊一聊对比一下这两门语言:微信
java是一门静态类型语言,主要用来作后端开发,以及移动端安卓开发等等。python是一门动态类型语言,主要用在机器学习,ai,数据分析,爬虫等领域。app
测试领域,不管是自动化测试仍是测试平台开发,两门语言都有大量的类库和框架支持:
若是你打算以后测试转开发的话,推荐java,看招聘就知道,不管是校招仍是社招来讲,java的需求量都是远远多于python的。并且python作开发的话通常用于人工智能领域,对于学历有很高的要求。
对于没有任何语言基础的转行同窗来讲,python比java更加友好,简单易学,可读性更高。有句话是“人生苦短,我用python。”形象的说明了这门语言的特色。
好比读写一个相同的文件,若是java须要十行代码的话,而在python中只须要两行就能够实现。此外,python类库很是丰富,有现成的模板能够套,省去了初学者去舔砖加瓦造基垒的时间。
因为国内目先后端开发大部分公司使用的都是java,因此学习java就有一个很大的优点,能够保持跟开发步调一致。便于交流,减小沟通成本。甚至,有时间测试完成以后,你能够拿开发代码进行学习,帮助他们code review。这样能够进一步加深对业务的理解。这些技术优点是产品经理或者运营人员所不具有的。
除此以外,你也能够考虑跟着公司的使用语言进行学习。好比大家公司自动化使用的是python,且组内大部分人技术栈都是python,那么你就能够选择python进行入手学习,这样你能够边学边实战,学完就能够立刻应用到公司项目中去。增长实战经验,这种提高最快,并且遇到解决不了的问题,能够抱大腿......
最后,总结一下,这两种语言其实无论你学好哪一个均可以找到不错的工做,选择哪一个看我的喜爱。“Talk is cheap,Show me your code!”最重要的是立刻行动,写代码,日积月累,天然能够成为大佬!
-
公众号 「FunTester」首发,更多原创文章: FunTester410+原创文章,欢迎关注、交流,禁止第三方擅自转载。
热文精选

本文分享自微信公众号 - FunTester(NuclearTester)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。