因為我經常在分享自動化測試技術,最近被問到:
功能測試想轉自動化,請問應該怎麼入手?有沒有好的資源推薦?
那麼,接下來我就結合自己的經歷聊一聊我是如何在工作中做自動化測試的。學習路線和網盤資源放在文末了。(因為詳細所以篇幅很長,建議收藏)
測試新人
我的職業生涯開始和大多數測試人一樣,剛開始接觸都是純功能介面測試。那時候在一家電商公司做測試,在這個吃技術的IT行業來說,不斷學習是至關重要的。但是我之前做的是最基礎的業務工作,隨著時間的消磨,讓我產生了對自我價值和崗位意義的困惑。
一是感覺自己在浪費時間,另一個就是做了快2年的功能測試,感覺每天過得渾渾噩噩,薪資也從不見漲,崗位也一直得不到提升,身邊的許多同事要麼升職加薪,要麼跳槽去了更好的公司工作,特別覺得自己碌碌無為。
選擇Python
不得已開始思考怎麼去改變現狀。當時最簡單的想法是擠出時間去學習各種測試技術和工具,提高自己的價值,也就是核心競爭力。後來被主管偶然發現,給了我一些資源和文件,建議我去研究下自動化測試。
當時來說,我還沒有接觸過自動化測試,但是透過主管給我的資源,讓我認識到開發知識對於測試工作的幫助,程式語言的能力會決定你測試技術的深度。當然也能帶來收入的高度。
那時候正是指令碼語言開始流行起來,因為當時專案的原因跟Python結緣,開始用Python和Selenium來嘗試做自動化測試。那時,關於Python版的Selenium並不多,在學習的同時我開始發表相關部落格。
分享是學習新技術的驅動力,大多數時候我們很難堅持學一個新技術的原因就在於缺少反饋,不管是做內部分享或者是部落格都是很好的反饋機制。當然,也很有成就感。
2015年的時候,由於專案的原因,開始使用Robot Framework測試框架,正因為有Python的基礎,所以很快就理解了Robot Framework框架的工作原理,並可以根據專案的需要開發系統關鍵字。
掌握自動化工具的原理使用起來才會更加遊刃有餘,而這也需要你有一定的程式設計基礎的原因。
2016年隨著移動App越來越流行,趁著換工作的間隙,我開始學習了一個月的appium自動化工具,但工作中用不到後來就沒在繼續了。
後來,我開始針對另一個社群專案編寫Web UI自動化測試,前後做了好幾個月,積累了一些經驗,開始嘗試設計Web自動化框架,當時主要還是針對Selenium API的封裝。
自動化測試
當時由於公司的規模和產品的侷限性,導致自動化測試始終未能應用到公司實戰專案中。我覺得外面的世界有更多機會,自動化已經流行而且越來越普及,我想要突破自己的測試技術瓶頸,我毅然決然的跳槽一家公司專職做自動化測試的工作。
後來的機緣巧合,朋友推薦我去一家金融公司做測試開發,負責開發公司定製化的測試質量平臺。
這對於我來說是一個挑戰,新的領域,測試開發在一線城市非常吃香。當時的待遇比初、中級開發工程師要高。
到崗後就是頂住壓力,不斷的學習測試開發技能,而且學以致用。技術架構採用的是前後端分享,包括Python的後端開發框架Flask,前端框架vue,elementUI元件等
堅持做了幾年的測試開發,真實的體會到測試開發等於測試全週期的工作,包括產品功能業務熟悉,測試平臺的需求設計,平臺前後端研發,平臺的自測,給到測試部門幾十號人的推廣、培訓產品使用、運營。
所以測試開發的大前提是功能測試經驗豐富,介面自動化,UI自動化非常熟練,不然很難以開展自動化測試開發工作。
行業內卷
最近聊到軟體測試的行業內卷,經濟大環境不好,企業也都在“降本增效”。再加上轉行和大學生進入測試行業。想要獲得更好的待遇和機會,不斷提升自己的技能棧成了迫在眉睫的問題。
不論是面試哪個級別的測試工程師,面試官都會問一句“會程式設計嗎?有沒有自動化測試的相關經驗?”
所以還停留在手工功能測試層面,如果不去提升技術,不僅要面臨長江後浪推前浪的壓力,還要頂住當下行業的內卷之勢。不然就只能接受窘境,最後甚至是面臨淘汰。更別說升職漲薪了
如何從初級功能測試到高階自動化測試,效能測試或者測試開發,達到技術提升和待遇提高的目的,是很多初級測試人必經的一個階段。作為一個過來人,對學習過程中的困難深有體會。
所以我熱衷於收集整理資源,記錄踩坑到爬坑的過程。希望能把自己所學,實際工作中使用的技術、學習方法、心得及踩過的一些坑,記錄下來。也希望想提升技能的你一樣,透過我的分享可以少走一些彎路,可以形成一套自己的方法,並應用到實際中。
學習指南
如果你也需要擺脫行業的內卷
在還能奮鬥的年齡,選擇合適的方向,儘量去發揮好自己的價值。
我的自動化測試之路,一路走來都離不每個階段的計劃。在這套學習路線中,我們結合了當下企業招聘所必須的技能點做了減法。避免貪多嚼不爛。除了下面的《自動化測試工程師學習路線》,也整理了不少【網盤資源】,需要的朋友可以掃描文末二維碼獲取網盤連結。希望會給你帶來幫助和方向。
【自動化測試開發學習路線】
1.軟體測試基礎知識內容
2.MySQL資料庫知識
3.介面測試基本知識
4.Python程式設計技術
5.Web自動化測試技術
6.介面自動化測試
7.APP自動化測試
8.APP自動化測試擴充
9.跨平臺自動化測試RobotFramework & Airtest
10.DevOps 持續整合
11.Jmeter效能測試
12.vue測試開發平臺
13.django測試開發
14.安全測試
15.K8S雲原生技術測試應用內容
-事必有法,然後有成- 最後祝大家早日拿到滿意的offer ~
行動吧,在路上總比一直觀望的要好,未來的你肯定會感 謝現在拼搏的自己!如果想學習提升找不到資料,沒人答疑解惑時,請及時加入扣群:731789136,裡面有各種軟體測試+開發資料和技術可以一起交流學習哦。
最後感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,這些資料,對於【軟體測試】的朋友來說應該是最全面最完整的備戰倉庫,雖然不是什麼很值錢的東西,如果你用得到的話可以直接拿走: