知识屋:更实用的电脑技术知识网站
所在位置:首页 > 科技

考研失利后,我是如何零基础转行测试开发 ,成功拿下独角兽公司offer?

发表时间:2022-03-25来源:网络

你好,我是测试开发工程师——臻叔。

欢迎和我交流测试领域相关问题(测试入门、技术、python交流都可以)

全文2000多字,多图预警,建议先收藏

想当年,从一个什么都不懂的非科班小白,考研失利后,转行到K12教育知名互联网公司做测试开发工程师,我用了大概半年的时间。

这个过程中我自己也摸索出了一条学习路线,在这里想给大家分享一下我的学习路线,希望能给大家带来一些帮助。

先上一下脑图,学习都是循序渐进的,你先学会了如何做一名优秀的测试工程师,然后才能进阶成为一名测试开发工程师。

如果是完全的0基础小白,最少要掌握测试基础、计算机基础、业务能力、功能测试。但是如果想要成为一名优秀的测试开发,以上全部都要学。

写在前面的话

测试工程师或者测试开发工程师,都是需要阅读很多的资料来武装自己,我这里也准备了测试开发工程师推荐书单。



下面进入正题

一、测试基础

要长胡子先成人,测试基础是新手入门必须要掌握的技能,这部分是最不能忽视的。

对于零基础的小白,先看一下这个视频。

【测吧】7小时入门软件测试

推荐理由:

「从内容上来说」

这是一个不错的测试开发的科普视频,从测试基本概念,测试流程,接口测试方法,再到测试面试,都有讲解,干货满满。

「从主讲资历来说」

绝对是业界大佬:思寒老师,十年以上测试行业工作经验,中国移动互联网测试开发大会演讲嘉宾,先后工作于阿里、百度、Testin、雪球等公司,开源项目AppCrawler作者,现为霍格沃兹测试学院的首任校长。

但如果是想系统学习,建议还是看以下2本书。

这里是《软件测试的艺术》的完整读书笔记,抽空可以看看:

二、计算机基础

非科班出身,很重要么?中国50%以上的码农都是非科班出身的,臻叔也是非科班出身的,本科学的是自动化。

但是既然要从事软件测试行业。计算机、操作系统、数据结构与算法、计算机网络这些经典的课程还是需要掌握的。

先天不足,后天来补。

可以去中国大学MOOC(https://www.icourse163.org/)进行学习,里面有海量的课程可以免费学习,师资力量不必担忧,老师都是名校教授,学成还可以申请证书,可以写到简历里面,锃光瓦亮。

推荐上这四门课:

【大学计算机】「北理工 李凤霞教授等」

【操作系统】「北交大 翟高寿教授等」

【数据结构】「浙大 陈越教授等」

【计算机网络】「哈工大 李全龙教授等」

接下来再看这几本书:

Linux

Linux是测试工作最常使用的操作系统,部署和维护测试环境,都需要在Linux中进行,要想掌握,必须多加练习。

推荐一个网站,Linux命令大全,有不懂的命令可以在这里速查,建议收藏。

网络

数据库

数据库是重中之中,光看还不行,要不断加以练习。

推荐大家可以去牛客网进行sql练习

三、业务能力

测试和业务是分不开的,但没办法,这个只能在工作中提升。

假如说没有工作经历的话,可以拿一些头部的app来做以下3个练习:

1、自己梳理业务名词表
2、多思考,会画系统框架图、泳道图
3、梳理产品功能,画脑图

这是我刚进入公司,梳理的业务名词表的截图,仅供参考。

四、测试能力

测试能力也是需要不断的实践才能总结出来的,推荐大家一门慕课网的实战课程

《全面系统学测试 从小白入门到实战就业》

这门课是以余额宝作为实战项目进行测试讲解,包含功能测试、性能测试、自动化测试等内容。

自动化测试

推荐大家一门慕课网的课程《Python移动自动化测试面试》,讲得还是挺全面的,可以作为入门课程,也可以作为备战面试的复习资料。

性能测试

jmeter开源大法好,在测试圈也是十分流行,建议看

五、编程能力

现在的测试岗位招聘门槛都提升了不少,不会编程语言,很难在这个行业立足。

建议学习 Java 或者 Python

java

想先学java入门的,去看浙大的翁凯老师讲的《面向对象程序设计——Java语言》

python

想先学python的,去看翁凯老师的《Python程序设计》

当然,要是觉得看视频花费时间太多,也可以直接看【廖雪峰Python教程】

看完之后,如果都能理解,那基本上入门了。

但是面试往往不是入门就可以的,你至少得熟悉,不仅要多写,你还需要对Python有更深层次的理解,试想,假如你能自如应对面试官的灵魂拷问:

(1)Python的深拷贝和浅拷贝的区别是啥?
(2)Python的垃圾回收机制是怎样的?
(3)Python的协程是什么?怎么实现?
(4)Python的继承顺序是怎样的?
(5)什么是鸭子类型,鸭子类型有什么用?
(6)什么是元类?
(7)Python是怎么实现ORM的?小朋友,你为什么有那么多问号

那你面试的时候,编程语言这关就稳了。

面试前最好看看《Python3高级核心技术97讲》,满满干货,而且也传授看源码的方法。


如果时间富余的话,再学习下算法,虽然工作中不一定用得上,但是现在不少大厂面试都会考。

如果你的手机是iOS,还可以下载一个APP:【算法动画图解】

假如想要了解测试平台的开发,除了CI神器Jenkins之外,还免不了要学习前后端的web框架

一般测试平台的开发框架,

【前端】:Bootstrap / elementUI (Vue)

【后端】:Spring Boot / Django

开发后台网站,推荐学习以下几门实战课程

【强力Django+杀手级xadmin开发在线教育网站】「vue + drf」

【引爆潮流技术Vue+Django REST framework打造生鲜电商项目】「django + xadmin」

【从Java后端到Web全栈】「vue + springboot」

【玩转Spring全家桶】「spring」

当然,你还得熟练掌握市面上常用的测试工具

在这里,臻叔列举了测试开发需要掌握的测试工具,都在下面的图里了。不是最全的,但是应该够用了。


最后,这里有一份 2020年最新【阿里、头条、美团】【软件测试】面试题(持续更新!)

如果你能答对以上80%的题目,我相信找工作难不倒你。


臻叔和大多数程序员一样,乐于分享,热衷开源。

业余时间也会以视频的形式分享我的行业见解。

❤既然都看到这里啦,请你帮个忙:

1、点赞,让更多小伙伴看到;

2、关注我,免费解答新手测试的疑惑。

收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜