2023年軟件測試已經(jīng)崩盤了嗎,為什么都找不到工作了?
最近后臺很多粉絲給我留言:
2023年軟件測試已經(jīng)崩盤了嗎,為什么都找不到工作了?
確實,今年經(jīng)濟大環(huán)境不好,企業(yè)也都在降本增效,如果技術(shù)能力還在被應(yīng)屆生競爭崗位的階段,只會越來越難。
找不到好工作是環(huán)境問題,找不到工作就需要解決自身的問題。過去幾年,可能你只要會一些功能測試?yán)碚摼湍苷业揭环莨ぷ鳎乾F(xiàn)在的面試和招聘要求可以直觀的感受到,企業(yè)要求在提高,自動化變成必會技能,最好還能做性能,會測試開發(fā)更好。不再是大力出奇跡的手工測試階段。
換個方向思考,這也是行業(yè)在進化的體現(xiàn),門檻在提高的同時,相應(yīng)的薪酬也在增長,而身在局中的我們需要跟上行業(yè)的發(fā)展腳步,才不至于在這個浪潮中被替代,被淘汰~
如果沒有思路和方法的朋友,希望我整理的學(xué)習(xí)路線和心路歷程能給你一些思考和幫助。(學(xué)習(xí)路線和網(wǎng)盤資源放在文末了)
測試新人
我的職業(yè)生涯開始和大多數(shù)測試人一樣,剛開始接觸都是純功能界面測試。那時候在一家電商公司做測試,在這個吃技術(shù)的IT行業(yè)來說,不斷學(xué)習(xí)是至關(guān)重要的。但是我之前做的是最基礎(chǔ)的業(yè)務(wù)工作,隨著時間的消磨,讓我產(chǎn)生了對自我價值和崗位意義的困惑。
一是感覺自己在浪費時間,另一個就是做了快2年的功能測試,感覺每天過得渾渾噩噩,薪資也從不見漲,崗位也一直得不到提升,身邊的許多同事要么升職加薪,要么跳槽去了更好的公司工作,特別覺得自己碌碌無為。

選擇Python
不得已開始思考怎么去改變現(xiàn)狀。當(dāng)時最簡單的想法是擠出時間去學(xué)習(xí)各種測試技術(shù)和工具,提高自己的價值,也就是核心競爭力。后來被主管偶然發(fā)現(xiàn),給了我一些資源和文檔,建議我去研究下自動化測試。
當(dāng)時來說,我還沒有接觸過自動化測試,但是通過主管給我的資源,讓我認識到開發(fā)知識對于測試工作的幫助,編程語言的能力會決定你測試技術(shù)的深度。當(dāng)然也能帶來收入的高度。
那時候正是腳本語言開始流行起來,因為當(dāng)時項目的原因跟Python結(jié)緣,開始用Python和Selenium來嘗試做自動化測試。那時,關(guān)于Python版的Selenium并不多,在學(xué)習(xí)的同時我開始發(fā)表相關(guān)博客。
分享是學(xué)習(xí)新技術(shù)的驅(qū)動力,大多數(shù)時候我們很難堅持學(xué)一個新技術(shù)的原因就在于缺少反饋,不管是做內(nèi)部分享或者是博客都是很好的反饋機制。當(dāng)然,也很有成就感。

2015年的時候,由于項目的原因,開始使用Robot Framework測試框架,正因為有Python的基礎(chǔ),所以很快就理解了Robot Framework框架的工作原理,并可以根據(jù)項目的需要開發(fā)系統(tǒng)關(guān)鍵字。
掌握自動化工具的原理使用起來才會更加游刃有余,而這也需要你有一定的編程基礎(chǔ)的原因。
2016年隨著移動App越來越流行,趁著換工作的間隙,我開始學(xué)習(xí)了一個月的appium自動化工具,但工作中用不到后來就沒在繼續(xù)了。
后來,我開始針對另一個社區(qū)項目編寫Web UI自動化測試,前后做了好幾個月,積累了一些經(jīng)驗,開始嘗試設(shè)計Web自動化框架,當(dāng)時主要還是針對Selenium API的封裝。
自動化測試
當(dāng)時由于公司的規(guī)模和產(chǎn)品的局限性,導(dǎo)致自動化測試始終未能應(yīng)用到公司實戰(zhàn)項目中。我覺得外面的世界有更多機會,自動化已經(jīng)流行而且越來越普及,我想要突破自己的測試技術(shù)瓶頸,我毅然決然的跳槽一家公司專職做自動化測試的工作。
后來的機緣巧合,朋友推薦我去一家金融公司做測試開發(fā),負責(zé)開發(fā)公司定制化的測試質(zhì)量平臺。
這對于我來說是一個挑戰(zhàn),新的領(lǐng)域,測試開發(fā)在一線城市非常吃香。當(dāng)時的待遇比初、中級開發(fā)工程師要高。
到崗后就是頂住壓力,不斷的學(xué)習(xí)測試開發(fā)技能,而且學(xué)以致用。技術(shù)架構(gòu)采用的是前后端分享,包括Python的后端開發(fā)框架Flask,前端框架vue,elementUI組件等
堅持做了幾年的測試開發(fā),真實的體會到測試開發(fā)等于測試全周期的工作,包括產(chǎn)品功能業(yè)務(wù)熟悉,測試平臺的需求設(shè)計,平臺前后端研發(fā),平臺的自測,給到測試部門幾十號人的推廣、培訓(xùn)產(chǎn)品使用、運營。
所以測試開發(fā)的大前提是功能測試經(jīng)驗豐富,接口自動化,UI自動化非常熟練,不然很難以開展自動化測試開發(fā)工作。
行業(yè)內(nèi)卷
最近聊到軟件測試的行業(yè)內(nèi)卷,經(jīng)濟大環(huán)境不好,企業(yè)也都在“降本增效”。再加上轉(zhuǎn)行和大學(xué)生進入測試行業(yè)。想要獲得更好的待遇和機會,不斷提升自己的技能棧成了迫在眉睫的問題。
不論是面試哪個級別的測試工程師,面試官都會問一句“會編程嗎?有沒有自動化測試的相關(guān)經(jīng)驗?”
所以還停留在手工功能測試層面,如果不去提升技術(shù),不僅要面臨長江后浪推前浪的壓力,還要頂住當(dāng)下行業(yè)的內(nèi)卷之勢。不然就只能接受窘境,最后甚至是面臨淘汰。更別說升職漲薪了
如何從初級功能測試到高級自動化測試,性能測試或者測試開發(fā),達到技術(shù)提升和待遇提高的目的,是很多初級測試人必經(jīng)的一個階段。作為一個過來人,對學(xué)習(xí)過程中的困難深有體會。
所以我熱衷于收集整理資源,記錄踩坑到爬坑的過程。希望能把自己所學(xué),實際工作中使用的技術(shù)、學(xué)習(xí)方法、心得及踩過的一些坑,記錄下來。也希望想提升技能的你一樣,通過我的分享可以少走一些彎路,可以形成一套自己的方法,并應(yīng)用到實際中。
學(xué)習(xí)指南
如果你也需要擺脫行業(yè)的內(nèi)卷
在還能奮斗的年齡,選擇正確的方法,繼續(xù)在這個行業(yè)占有一席之地。畢竟IT行業(yè)的高薪紅利,不是其他行業(yè)輕易能夠比擬的
我的自動化測試之路,一路走來都離不每個階段的計劃,因為自己喜歡規(guī)劃和總結(jié),所以,我和朋友特意花了一段時間整理編寫了下面的《自動化測試工程師學(xué)習(xí)路線》,也整理了不少【網(wǎng)盤資源】,需要的朋友可以掃描文末二維碼獲取網(wǎng)盤鏈接。希望會給你帶來幫助和方向。
【自動化測試學(xué)習(xí)路線】
1. 自動化測試必備Python編程內(nèi)容
自動化測試必備Python編程內(nèi)容 |
|---|
Python環(huán)境搭建 |
Python語法規(guī)則 |
Python運算符 |
Python數(shù)據(jù)類型 |
Python流程控制 |
對象,類,模塊與包概念 |
Python文件操作 |
Python高級應(yīng)用 |
2. Web自動化測試基礎(chǔ)內(nèi)容
Web自動化測試基礎(chǔ)內(nèi)容 |
|---|
自動化測試流程概述 |
selenium環(huán)境搭建 |
常規(guī)頁面元素定位方式 |
xpath元素定位方式詳解 |
css元素定位方式詳解 |
元素組定位 |
特殊元素定位 |
瀏覽器操作 |
三種等待時間詳解 |
切換操作技巧 |
鼠標(biāo),鍵盤操作技巧 |
鼠標(biāo),鍵盤操作技巧 |
3. Web自動化測試項目內(nèi)容
Web自動化測試項目內(nèi)容 |
|---|
WebUI自動化用例編寫 |
unittest自動化框架:unittest組織測試用例的原理 |
unittest自動化框架:unittest語法詳解 |
unittest自動化框架:unittest批量運行用例 |
unittest自動化框架:用例的前置后置操作,跳過運行 |
自動化用例斷言 |
自動化測試之POM模型:POM的意義與原理 |
自動化測試之POM模型:POM頁面對象模型 |
數(shù)據(jù)驅(qū)動:DDT實現(xiàn)自動化測試驅(qū)動 |
數(shù)據(jù)驅(qū)動:yaml文件驅(qū)動 |
分布式測試:selenium分布式原理 |
分布式測試:分布式環(huán)境搭建 |
分布式測試:大規(guī)模自動化測試 |
4. APP自動化測試基礎(chǔ)內(nèi)容
APP自動化測試基礎(chǔ)內(nèi)容 |
|---|
自動化框架與工具使用 |
ADB命令操作 |
Monkey穩(wěn)定性測試:Monkey穩(wěn)定性測試原理 |
Monkey穩(wěn)定性測試:Monkey指令詳解(基礎(chǔ)參數(shù),事件參數(shù),調(diào)試選項) |
Monkey穩(wěn)定性測試:Monkey日志分析(日志定位,回歸驗證) |
自動化配置項:Desired Capabilities配置文檔 |
自動化配置項:常見配置項介紹和使用場景分析 |
APP界面元素查看工具 |
APP元素定位:元素定位方式詳解 |
APP元素定位:元素組定位方式 |
APP元素操作:元素屬性操作 |
APP元素操作:常用API函數(shù) |
APP元素操作:點擊,滑動,輸入字符,點擊坐標(biāo)等操作技巧 |
5. APP自動化測試項目內(nèi)容
APP自動化測試項目內(nèi)容 |
|---|
微信小程序自動化操作:Appium手勢連續(xù)性操作 |
微信小程序自動化操作:Appium鍵盤事件 |
微信小程序自動化操作:切換操作 |
微信小程序自動化操作:小程序自動化原理 |
微信小程序自動化操作:Webview元素定位 |
微信小程序自動化操作:小程序自動化實現(xiàn) |
H5,Webview自動化:H5的概念 |
H5,Webview自動化:H5與原生頁面的對比 |
H5,Webview自動化:H5測試技術(shù)詳解 |
H5,Webview自動化:Webview元素定位,自動化實現(xiàn) |
UIautomator2測試框架:UIautomator2測試框架介紹 |
UIautomator2測試框架:UIautomator2測試框架環(huán)境搭建 |
UIautomator2測試框架:常用關(guān)鍵字封裝,滑動,APP點擊 |
安卓集群服務(wù)搭建:集群環(huán)境搭建 |
安卓集群服務(wù)搭建:批量管理測試真機 |
Pytest測試框架+分布式運行腳本 |
6. 接口自動化測試基礎(chǔ)內(nèi)容
接口自動化測試基礎(chǔ)內(nèi)容 |
|---|
接口自動化測試概述:接口測試的定義與意義 |
接口自動化測試概述:接口測試的實現(xiàn)方式 |
接口自動化測試概述:接口自動化的實現(xiàn)流程 |
HTTP協(xié)議:通信協(xié)議原理解析 |
HTTP協(xié)議:HTTP與HTTP協(xié)議詳解 |
HTTP協(xié)議:session,cookie,token鑒權(quán) |
JSON數(shù)據(jù)格式詳解:JSON與XML的比較 |
JSON數(shù)據(jù)格式詳解:JSON的語法規(guī)則 |
JSON數(shù)據(jù)格式詳解:JSON的數(shù)據(jù)類型介紹 |
JSON數(shù)據(jù)格式詳解:JSON的練習(xí) |
Requests模塊基礎(chǔ):Requests安裝 |
Requests模塊基礎(chǔ):使用Requests發(fā)送請求 |
Requests模塊基礎(chǔ):不同格式解析響應(yīng)數(shù)據(jù) |
Requests之session模塊:session模塊應(yīng)用,接口請求,會話管理 |
Requests請求HTTP接口實戰(zhàn):GET,POST,DELETE,文件上傳 |
Requests請求HTTP接口實戰(zhàn):接口類型,json,from-data,參數(shù)類型 |
Requests請求HTTP接口實戰(zhàn):場景實戰(zhàn)演練 |
7. 接口自動化測試實戰(zhàn)內(nèi)容
接口自動化測試實戰(zhàn)內(nèi)容 |
|---|
HTTP接口測試實戰(zhàn)之論壇接口:項目接口文檔分析 |
HTTP接口測試實戰(zhàn)之論壇接口:接口測試用例編寫規(guī)范 |
HTTP接口自動化測試實戰(zhàn):Requests進行接口自動化測試實戰(zhàn) |
HTTP接口自動化測試實戰(zhàn):封裝HTTP請求類 |
HTTP接口自動化測試實戰(zhàn):unittest組織測試用例 |
Mock server:Mock server應(yīng)用場景,實現(xiàn)原理 |
基于Flask實現(xiàn)Mock server:Flask項目搭建 |
基于Flask實現(xiàn)Mock server:開發(fā)get,post,delete,form-data的mock |
基于Flask實現(xiàn)Mock server:文件上傳接口,auth認證 |
WebSocket協(xié)議接口:WebSocket協(xié)議接口原理 |
WebSocket協(xié)議接口:搭建WebSocket測試環(huán)境 |
WebSocket接口測試實戰(zhàn):Jmeter測試WebSocket協(xié)議接口 |
WebSocket接口測試實戰(zhàn):Python測試WebSocket接口 |
基于RPC協(xié)議之Dubbo接口測試:Dubbo接口測試原理 |
基于RPC協(xié)議之Dubbo接口測試:Dubbo基礎(chǔ)架構(gòu)解析 |
Dubbo接口測試實戰(zhàn):telent測試Dubbo接口 |
Dubbo接口測試實戰(zhàn):Jmeter測試Dubbo |
Dubbo接口測試實戰(zhàn):Python進行Dubbo接口測試 |
8.持續(xù)集成專項技術(shù)
持續(xù)集成專項技術(shù) |
|---|
Jenkins介紹,環(huán)境搭建:部署Jenkins環(huán)境 |
Jenkins介紹,環(huán)境搭建:常用Jenkins插件安裝 |
構(gòu)建自動化測試任務(wù):自動化測試用例結(jié)合Jenkins構(gòu)建任務(wù)應(yīng)用 |
構(gòu)建自動化測試任務(wù):自動化測試用例結(jié)合Jenkins定時運行 |
構(gòu)建自動化測試任務(wù):自動化測試用例結(jié)合Jenkins批量運行 |
自動化發(fā)送郵件測試報告 |
git倉庫的使用:git版本庫創(chuàng)建 |
git倉庫的使用:添加遠程倉庫 |
git倉庫的使用:克隆,pull,push,commit命令使用 |
Docker容器技術(shù):Docker使用原理 |
Docker容器技術(shù):Docker環(huán)境搭建 |
Docker容器技術(shù):Docker在自動化測試中場景應(yīng)用 |
流水線:構(gòu)建CI/CD流水線流程 |
9. 自動化測試框架項目技術(shù)
自動化測試框架項目技術(shù) |
|---|
Pytest |
Pytest基礎(chǔ)語法 |
Fixture的使用 |
Allure測試報告:Pytest之conftest使用 |
Allure測試報告:集成Allure測試報告 |
框架搭建原理思路:搭建框架之前的準(zhǔn)備 |
框架搭建原理思路:框架的意義,設(shè)計思路,代碼模塊分層思想 |
UI自動化測試框架搭建一:代碼模塊分成 |
UI自動化測試框架搭建一:搭建日志系統(tǒng) |
UI自動化測試框架搭建一:搭建斷言系統(tǒng),報告系統(tǒng) |
UI自動化測試框架搭建二 |
接口自動化測試框架搭建一 |
接口自動化測試框架搭建二 |
UI測試框架和接口測試框架一體化 |
HTML前端 |
Flask后端api編寫:Resful API開發(fā)規(guī)范,構(gòu)建一套API服務(wù) |
-每天學(xué)習(xí)一點,今后必成大神-
微信掃碼,獲取下方網(wǎng)盤鏈接

-事必有法,然后有成- 最后祝大家早日拿到滿意的offer ~
如果你不想一個人野蠻生長,找不到系統(tǒng)的資料,問題得不到幫助,堅持幾天便放棄的感受的話,可以點擊下方【閱讀原文】加入我們的QQ群:563251944,大家可以一起討論交流,里面會有各種軟件測試資料和技術(shù)交流。
今天主要是和大家分享我的學(xué)習(xí)路線和網(wǎng)盤資源,后續(xù)我會分享一些面試攻略,有被幫助到的朋友,大家可以點贊支持一下~
