全文2000多字,多圖預警,建議先收藏,有“在看”麼?順便點個蟹蟹
想當年,從一個什麼都不懂的非科班測試小白,考研失利後,轉行到K12教育知名互聯網公司做測試開發工程師,我用了大概半年的時間。
這個過程中我自己也摸索出了一條學習路線,在這裏想給大家分享一下我的學習路線,希望能給大家帶來一些幫助。
先上一下腦圖,學習都是循序漸進的,你先學會了如何做一名優秀的測試工程師,然後才能進階成爲一名測試開發工程師。
如果是完全的0基礎小白,最少要掌握測試基礎、計算機基礎、業務能力、功能測試。但是如果想要成爲一名優秀的測試開發,以上全部都要學。
寫在前面的話
測試工程師或者測試開發工程師,都是需要閱讀很多的資料來武裝自己,我這裏也準備了測試開發工程師推薦書單,大家可以在去我的公衆號【測試開發Guide】中回覆「書單」獲取。
一、測試基礎
要長鬍子先成人,測試基礎是新手入門必須要掌握的技能,這部分是最不能忽視的。
對於零基礎的小白,先看一下這個視頻。
**【測吧】7小時入門軟件測試 **
https://www.bilibili.com/video/BV1pb411u7oW
推薦理由:
「從內容上來說」
這是一個不錯的測試開發的科普視頻,從測試基本概念,測試流程,接口測試方法,再到測試面試,都有講解,乾貨滿滿。
「從主講資歷來說」
絕對是業界大佬:思寒老師,十年以上測試行業工作經驗,中國移動互聯網測試開發大會演講嘉賓,先後工作於阿里、百度、Testin、雪球等公司,開源項目AppCrawler作者,現爲霍格沃茲測試學院的首任校長。
但如果是想系統學習,建議還是看以下2本書**。**
這裏是《軟件測試的藝術》的完整讀書筆記,抽空可以看看:
吐血整理,《軟件測試的藝術》讀書筆記
https://zhuanlan.zhihu.com/p/128095045
二、計算機基礎
非科班出身,很重要麼?中國50%以上的碼農都是非科班出身的,臻叔也是非科班出身的,本科學的是自動化。
但是既然要從事軟件測試行業。計算機、操作系統、數據結構與算法、計算機網絡這些經典的課程還是需要掌握的。
先天不足,後天來補。
可以去中國大學MOOC(https://www.icourse163.org/)進行學習,裏面有海量的課程可以免費學習,師資力量不必擔憂,老師都是名校教授,學成還可以申請證書,可以寫到簡歷裏面,鋥光瓦亮。
推薦上這四門課:
【大學計算機】「北理工 李鳳霞教授等」
https://www.icourse163.org/course/BIT-47004
【操作系統】「北交大 翟高壽教授等」
https://www.icourse163.org/course/NJTU-1003245001
【數據結構】「浙大 陳越教授等」
https://www.icourse163.org/course/ZJU-93001?utm_source=weixin&utm_medium=iphoneShare&utm_campaign=share
【計算機網絡】「哈工大 李全龍教授等」
https://www.icourse163.org/course/HIT-154005
接下來再看這幾本書:
Linux
Linux是測試工作最常使用的操作系統,部署和維護測試環境,都需要在Linux中進行,要想掌握,必須多加練習。
推薦一個網站,Linux命令大全,有不懂的命令可以在這裏速查,建議收藏。
https://man.linuxde.net/
網絡
數據庫
數據庫是重中之重,光看還不行,要不斷加以練習。
推薦大家可以去牛客網進行sql練習
https://www.nowcoder.com/ta/sql
三、業務能力
測試和業務是分不開的,但沒辦法,這個只能在工作中提升。
假如說沒有工作經歷的話,可以拿一些頭部的app來做以下3個練習:
1、自己梳理業務名詞表
2、多思考,會畫系統框架圖、泳道圖
3、梳理產品功能,畫腦圖
這是我剛進入公司,梳理的業務名詞表的截圖,僅供參考。
四、測試能力
測試能力也是需要不斷的實踐才能總結出來的,推薦大家一門慕課網的實戰課程
《全面系統學測試 從小白入門到實戰就業》
https://coding.imooc.com/class/chapter/411.html#Anchor
這門課是以餘額寶作爲實戰項目進行測試講解,包含功能測試、性能測試、自動化測試等內容。
自動化測試
推薦大家一門慕課網的課程《Python移動自動化測試面試》,講得還是挺全面的,可以作爲入門課程,也可以作爲備戰面試的複習資料。
https://coding.imooc.com/class/182.html
性能測試
jmeter開源大法好,在測試圈也是十分流行,建議看
《性能測試入門-Jmeter工具與監控全方位打造》
https://coding.imooc.com/class/142.html
五、編程能力
現在的測試崗位招聘門檻都提升了不少,不會編程語言,很難在這個行業立足。
建議學習 Java 或者 Python。
java
想先學java入門的,去看浙大的翁凱老師講的
《面向對象程序設計——Java語言》
https://www.icourse163.org/course/ZJU-1001542001
python
想先學python的,去看翁凱老師的
《Python程序設計》
https://www.icourse163.org/course/0809ZJU107-1206456840
當然,要是覺得看視頻花費時間太多,也可以直接看
【廖雪峯Python教程】
https://www.liaoxuefeng.com/wiki/1016959663602400
看完之後,如果都能理解,那基本上入門了。
但是面試往往不是入門就可以的,你至少得熟悉,不僅要多寫,你還需要對Python有更深層次的理解,試想,假如你能自如應對面試官的靈魂拷問:
(1)Python的深拷貝和淺拷貝的區別是啥?
(2)Python的垃圾回收機制是怎樣的?
(3)Python的協程是什麼?怎麼實現?
(4)Python的繼承順序是怎樣的?
(5)什麼是鴨子類型,鴨子類型有什麼用?
(6)什麼是元類?
(7)Python是怎麼實現ORM的?
小朋友,你爲什麼有那麼多問號
那你面試的時候,編程語言這關就穩了。
面試前最好看看《Python3高級核心技術97講》,滿滿乾貨,而且也傳授看源碼的方法。
《Python3高級核心技術97講》
https://coding.imooc.com/class/200.html
如果時間富餘的話,再學習下算法,雖然工作中不一定用得上,但是現在不少大廠面試都會考。
如果你的手機是iOS,還可以下載一個APP:【算法動畫圖解】
六、測試開發
測試開發最常逛的網站,testerhome肯定是少不了的,可以在這裏學到很多知識。
網站:
https://testerhome.com/
假如想要了解測試平臺的開發,除了CI神器Jenkins之外,還免不了要學習前後端的web框架
一般測試平臺的開發框架,
【前端】:Bootstrap / elementUI (Vue)
【後端】:Spring Boot / Django
開發後臺網站,推薦學習以下幾門實戰課程
【強力Django+殺手級xadmin開發在線教育網站】
「vue + drf」
https://coding.imooc.com/class/368.html
【引爆潮流技術Vue+Django REST framework打造生鮮電商項目】
「django + xadmin」
https://coding.imooc.com/class/131.html
【從Java後端到Web全棧】
「vue + springboot」
https://class.imooc.com/sale/javafullstack
【玩轉Spring全家桶】
「spring」
https://time.geekbang.org/course/intro/156
當然,你還得熟練掌握市面上常用的測試工具。
在這裏,臻叔列舉了測試開發需要掌握的測試工具,都在下面的圖裏了。不是最全的,但是應該夠用了。
最後,這裏有一份 2020年最新【阿里、頭條、美團】【軟件測試】面試題(持續更新!)
如果你能答對以上80%的題目,我相信找工作難不倒你。
臻叔和大多數程序員一樣,樂於分享,熱衷開源。
業餘時間也會以視頻的形式分享我的行業見解。
B站
https://space.bilibili.com/382166537
我還有一個微信公衆號:【測試開發Guide】
歡迎關注!