对于一个软件测试工程师来说,选哪一门语言来入手编程一直是件非常纠结的事情,当然立志做一辈子功能测试的人除外。

当你学完软件测试基本理论,掌握业务测试流程,功能测试可以搞定,数据库和linux玩的也很溜时,接下来想进一步进阶,那么学习一门编程语言必不可少。


同时,学习一门编程语言也是你成为自动化测试工程师乃至测试开发工程师的基本准入门槛。目前,编程语言五花八门,比如很多人大学会学的面向过程C语言,面向对象高级语言java或者python,更为方便的脚本语言shell等等。

对于测试行业来说,绝大多数从业者都会选择两门语言进行学习,就是java和python。很多培训班也会选择这两门语言作为主要语言进行教学,比如各种java/python全栈自动化等等。

测试行业学习编程语言的用途主要就是用来做自动化测试,比如java技术栈使用httpclient,testng,gson,poi,xstream等框架结合公司业务实现一套覆盖公司绝大部分接口的自动化测试框架,然后将代码部署到jenkins实现持续集成,每天定时执行,将执行结果发送到邮箱,以及上线前进行回归测试等…

这样做的目的主要是用来监控哪些接口服务或者环境挂了以及版本更迭中修改代码可能会影响关联到其它接口导致异常,所以一般上线前要把公司或者部门所有接口全部自动跑一遍,以便于测试人员第一时间发现问题,并交给开发人员进行修复解决。

除此之外,学习编程语言还可以编写一些测试工具用来提高整个测试团队的工作效率。这个一般是大厂测试开发工程师的主要工作职责。中小公司为了节约成本,一般会选择相对成熟的工具直接进行使用,而不会自己投入大量人力进行研发。

对于工作多年的从业者来说,同时掌握java和python两门语言再好不过,可以大大增加找工作时的选择范围。但是对于转行的人或者初学者来说,刚开始应该选择哪门语言进行入门呢?

首先,不建议新人同时学习两门语言,这样会导致每个都是浅尝辄止,反而不利于语言的深入学习。语言本身无优劣,只不过是实现目的一种工具手段而已。编程思维和解决问题的思路方法都是相通的,当你熟练掌握其中一门语言时,也可以快速掌握另一门语言。

下面来聊一聊对比一下这两门语言:

java是一门静态类型语言,主要用来做后端开发,以及移动端安卓开发等等。

python是一门动态类型语言,主要用在机器学习,AI,数据分析,爬虫等领域。

测试领域,无论是自动化测试还是测试平台开发,两门语言都有大量的类库和框架支持:

  • 接口自动化:Java+httpclient或者restassured;Python+requests
  • web自动化:Java+selenium+testng;Python+selenium+unittest
  • APP自动化:Java+appium+testng;Python+appium+unittest
  • 测试平台:Java+springmvc+springboot;Python+flask+django

如果你打算之后测试转开发的话,推荐java,看招聘就知道,无论是校招还是社招来说,java的需求量都是远远多于python的。而且python做开发的话一般用于人工智能领域,对于学历有很高的要求。

对于没有任何语言基础的转行同学来说,python比java更加友好,简单易学,可读性更高。有句话是“人生苦短,我用python。”形象的说明了这门语言的特点。

比如读写一个相同的文件,如果java需要十行代码的话,而在python中只需要两行就可以实现。此外,python类库非常丰富,有现成的模板可以套,省去了初学者去舔砖加瓦造基垒的时间。

由于国内目前后端开发大部分公司使用的都是java,所以学习java就有一个很大的优势,可以保持跟开发步调一致。便于交流,减少沟通成本。甚至,有时间测试完成之后,你可以拿开发代码进行学习,帮助他们code review。这样可以进一步加深对业务的理解。这些技术优势是产品经理或者运营人员所不具备的。

除此之外,你也可以考虑跟着公司的使用语言进行学习。比如你们公司自动化使用的是python,且组内大部分人技术栈都是python,那么你就可以选择python进行入手学习,这样你可以边学边实战,学完就可以马上应用到公司项目中去。增加实战经验,这种提升最快,而且遇到解决不了的问题,可以抱大腿…

最后,总结一下,这两种语言其实不管你学好哪个都可以找到不错的工作,选择哪个看个人喜好。最重要的是马上行动,写代码,日积月累,自然可以成为大佬!

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、Python必备开发工具

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、Python练习题

检查学习结果。

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

软件测试工程师应该学Python还是学Java?相关推荐

  1. 运维开发学go还是python_运维工程师是要学python还是学go那?

    在我们的认知中,运维工程师就是一个背锅侠,那么咱们怎么样来避免做背锅侠那? 可能有人会告诉你,你需要去懂一门开发语言,其实在现价段,掌握一门开发语言已经成为高级运维工程师的必备计能.不会开发,你就不能 ...

  2. python需要php吗-学python需要学linux吗

    不少Python新手经常问到学Python到底需不需要学习Linux? Python不是支持Windows和Linux操作系统吗?能在Windows下开发为什么还要学习Linux? 首选答案是肯定的, ...

  3. python学了有用吗-为什么要学Python?学了有什么用?

    近几年来,"学Python"的热潮是一浪高过一浪,就连SOHO中国董事长潘石屹近来也在微博上宣布,要开始学习语言Python.为什么要学Python?在当下这个人工智能高速发展的时 ...

  4. python学什么版本2020年_2020年了居然还有人在学Python?学python有什么用?

    都2020年了居然还有人在学python?学python有什么用? 真是气抖冷啊! 想学习python的小伙伴,可以加裙595227871 领取免费的学习资料 为什么选择python? 1.行业人才的 ...

  5. 学python有什么用-为什么要学Python?学了有什么用?

    近几年来,"学Python"的热潮是一浪高过一浪,就连SOHO中国董事长潘石屹近来也在微博上宣布,要开始学习语言Python.为什么要学Python?在当下这个人工智能高速发展的时 ...

  6. python容易学ma_初学者学python 初学者学python好学吗

    初学者学python 初学者学python好学吗 初学者学python好学吗?Python是最容易入门的编程语言,没有之一.如果初学者接触的第一门语言是C或者C++,对他们来说最难的不是语法,而是容易 ...

  7. 学了python还要学什么,学python先学什么

    最近学习Python,网上学习资料挺多的,这篇写的不错,关于学了python还要学什么和学python先学什么,大家有需要也可以看看. 1.弄清楚你的动机是什么 在开始深入学习Python在线之前,值 ...

  8. java好还是python好-学python好还是java好

    下面是python和Java两个编程语言的对比分析,大家可以酌情参考一下,依据自己的需求来定夺自己要学习哪一门语言. 1.运行速度 Java是静态语言静态编译的,速度上要比Python快的很多,而Py ...

  9. 学 Python 和学 Java ,哪个好找工作?

    对于程序员初学者,或者稍微了解互联网行业的人,这几年最频繁地听到的两种编程语言就是 Python 与 Java . 如果你问一名 Java 程序员,肯定会建议你先学 Java,因为他们认为Python ...

最新文章

  1. linux学习笔记十(Raid基本知识)
  2. Crontab和sudo中无法使用TensorFlow ImportError libcublas.so.9.0
  3. 对口高考计算机原理,对口高考计算机原理5.doc
  4. String.getBytes()和new String()
  5. 元类被称为 Python 中的“深奥的巫术“
  6. JDK源码系列(5)-StringBuffer
  7. sar命令,linux中最为全面的性能分析工具之一
  8. Linux开机启动过程(4):切换到64位模式-长模式(直到内核解压缩之前)
  9. ios启动私有链查询区块信息
  10. Android WebView无法播放视频或直播,关闭界面后任在播放的问题;
  11. 如何实现消息功能_微信多个群转发消息如何实现?多群转发小助手转播云端转播功能怎样操作?...
  12. 【机器学习数学基础】Mathematics for Machine Learning 梳理+习题答案
  13. Excel连接MySQL数据库进行数据的可视化
  14. github学习教程
  15. css里banner是什么,div+css banner的问题
  16. Python零基础学习
  17. 【Django】Django 的员工信息系统
  18. 一文详解 Band Protocol :预言机博弈中的价值输出
  19. 宏任务与微任务面试题
  20. [IT茶馆]李彦宏称暂不打算进军网游

热门文章

  1. mac 怎样切换 node 版本 , 如何安装oh-my-zsh
  2. 校园二手交易android软件 基于AndroidStudio
  3. arthas离线包使用说明
  4. 地理商业智能发展浅析
  5. IDEA2022 配置spark开发环境
  6. RxJava2 Flowable debounce(过滤操作符)去重复操作
  7. PC机组成——内存储器
  8. 平安科技-前端面试1
  9. IDEA设置背景图片
  10. Django REST 框架的 FBV 与 CBV 选择