测试(开发)工程师学习路线与学习资源导航总结
经历秋招QA面试蹂躏后,决定写下这篇学习路线与资源导航文章,希望可以帮助到以后求职QA的同学。
在面试中,主要考察这几方面:
- 计算机基础
- 编程语言
- 数据结构与算法
- 数据库
- Linux
- Git/Docker/CI
- 软件测试理论与场景
- 软测项目
计算机基础
计算机基础主要考察计网、操作系统、少数几家考察了计算机组成原理
计网
计网问得最多的是传输层,其次应用层,然后网络层。还有很多实际的网络问题,比如:页面未正常加载,如何排查和解决问题;为甚么有了IP协议还要TCP协议等。
对于计算机网络,能够系统地学习一遍是最好的了,因为如果只是背书,有些实际问题是回答不上来或者回答不全面的。
- 视频学习,王道考研计算机网络
- 知识点总结,Cyc2018-网络基础
操作系统
操作系统问得比较多的是进程与线程,又是也会与语言结合起来问,比如Python里GIL,多线程
-
视频学习,王道考研操作系统
-
知识点总结,Cyc2018-操作系统基础
计算机组成原理
- 视频学习,王道考研计算机组成原理
根据个人实际情况考虑是否学习,因为真的问得不多。当然这也是计算机基础,咱不能为了对付面试就真的不学,还是有时间学学。
编程语言
测试都要求会编程,当然没有纯开发那种深度。大厂测开主要分前后端测试(业务测试)和测试工具平台开发两个方向,如果分配到平台开发方向,那么对于编程语言的要求还是蛮高的。苦练基本功,长期有耐心。
测试常用语言主要有Python,Java。实际工作场景中,到底哪个用得多,真正用哪个,还是要看具体组。不过我推荐最好是学Java,因为可以兼顾测开两个方向,就算转Python,时间和学习成本也会小很多。
Python
Python分基础和高级
-
基础部分
链接:https://pan.baidu.com/s/1Rr0GtbQks-l1Gpc1-Len4w
提取码:zlzb链接:https://pan.baidu.com/s/17pR5moC0ayVVNeuQsp_59g
提取码:381i
Java
Java推荐B站狂神说
至少要学习以下几部分:
- 【狂神说Java】Java零基础学习视频通俗易懂
- 【狂神说Java】多线程详解
- 【狂神说Java】网络编程实战讲解
- 【狂神说Java】注解和反射
后面的数据库,Git,Docker,Linux都以狂神为主推荐
知识点总结:Cyc2018Java
数据结构与算法
这块主要以考察常见数据结构:链表、数组、树,以及算法编程题为主
数据结构
(二叉)树要重点学习
书籍推荐:漫画算法
视频学习:Python版(语言不重要,这里面树讲得很少)
链接:https://pan.baidu.com/s/1CQ3GRK5ZeiQvFaYyzZShoQ
提取码:i01h
算法刷题
最好是学完一遍基本的数据结构再刷题
刷题网站
- 力扣(推荐)
- 力扣前250题,可忽略困难题
- 剑指Offer
- Cyc力扣算法精选分类
- 牛客
- 练习ACM模式
刷题视频(非广告,主要是为了资源直达)
刷题书籍
数据库
数据库主要考察MySQL:基本的增删改查、事务、索引、三大范式等,包括与索引相关的B+树相关数据结构
视频学习
- Java(推荐)
视频学习,狂神说 - Python
链接:https://pan.baidu.com/s/1HYPzF9fF8uMCo9Z4qCH3rA
提取码:cedf
知识点总结
Linux
视频学习
链接:https://pan.baidu.com/s/1e_1R1E0oJPQSdoGpOeuPZw
提取码:h03i
知识点总结
Git/Docker/CI
视频学习
Docker(耗时较长,时间充裕可学习,不充裕看下面的知识点总结)
知识点总结
软件测试理论与测试场景
软件测试理论经典书籍推荐
软件测试的艺术(2oh9),看这一本对于软测的整体理解足已
视频学习
链接:https://pan.baidu.com/s/1hiSzOKAgxEipg7qO8UV-Zg
提取码:vgc5
软件测试项目
这一块应该是加分项,如果做过测试项目或者有实习是很好的。
项目的话推荐做两个:
- 前端UI自动化,Selenium,Appium等
- 接口自动化
这在上面的视频学习里面有涉及,再推荐两本书籍
软件测试论坛
面试中可能会被问到浏览过哪些论坛
很有帮助的微信公众号
- AskTesterHome
- testing51testing
- 360质量效能
- 搜狗测试
- AllTests
声明:部分资源来源于互联网,如侵权,请联系删除