【軟件測試面試突擊班】2024吃透軟件測試面試最全八股文攻略教程,一周學完讓你面試通過率提高90%!(自動化測試)
突然發現好像挺多人想投測開和測試的,很多人面試的時候也會被問到這幾個職位的區別,然后有測試經歷或者說有系統學習過測試的人蠻少的,樓主去年投這個崗位的時候也很迷茫,中間在網上請教過好幾位大佬and前輩,這里做一個小小的總結。
主要內容來自于和大佬們的談話以及《How Google Test Software》這本書,(如果有不準確的地方大家可以評論談論),也希望和我當時一樣迷茫的朋友們能有所收獲。
首先明確一下簡稱吧,畢竟這幾個名字太像了,中文容易搞混。軟件開發工程師(SWE)、測試開發工程師(SWT)、測試工程師(TE)。
區別
SWE也需要做測試的工作,SWE需要編寫測試驅動的設計、單元測試、參與構建各種大小規模的測試等(簡單說開發其實需要對自己的代碼負責,并不是很多人理解的代碼寫出來扔給SWT和TE去測)。
SWT也是一個開發者角色,只是工作重心在可測試性和通用測試基礎框架上。(SWT也要會寫代碼,代碼要求并不比開發低,他們寫代碼的聚焦點是測試,PS:以字節為例,大部分的測開是技術序列,代碼要求和開發一致,薪資也一致(當時宣講會聽的))。
SWE和SWT不是敵人(不是一個生產BUG,一個挑刺的),更多是合作伙伴,SET寫代碼的目的是可以讓SWE測試自己的功能。
TE把用戶放在第一位來思考,組織整體質量的實踐,分析解釋測試運行結果,驅動測試執行,構建端到端的自動化測試。(SWT和TE工作有很多交織,SWT更多是要構建測試框架,編寫測試工具。TE更多是腳本,測試用例,以及點點點…
以字節為例,TE對代碼的要求會相對較低,但是也需要寫代碼(宣講會聽的))。
國內很多大廠的測開其實做的是測試的活,也要很多測開干的就是開發的活,這些都取決于你的組,不是一概而論的。
SWT和TE對于知識廣度的要求會更高,SWE你也許只需要在一個角度仔細鉆研就可以了,SWT和TE則需要你是“萬能博士”,正如推薦的那本書的作者所說,招一個好的SWT和TE往往比SWE還難。
SWT的天花板也許相對SWE會低(畢竟國內的事實是SWT和TE做主程的很少),但是SWT越來越受重視是不爭的事實,同時SWT的平均待遇不低。
特征
最后選擇SWT還是TE引用推薦的那本書里的幾個標準(節選)(這也是交流的幾個大佬也反復的提到是否真的喜歡測試類的工作)。
你可能是一個SET,如果你有以下的特征:
1、你編程時,會內疚的想到還有很多單元測試用例沒有完成。隨后,你又會考慮各種生成測試代碼和驗證的方法,而不是手工 編寫每個單元測試用例。
2、看到編譯器警告時會焦慮不安。
3、當被要求測試一個產品時,你會打開源碼,開始思考需要模擬的東西。
4、你心目中領導力是:建立一個偉大的底層單元測試框架,供所有人來使用,或者在測試服務器上每天數百萬次的運行。
5、當被問到產品是否可以上線時,你可能會說:所有的測試都通過了。
你可能是一個TE,如果你有以下的特征:
1、你能在已有的代碼段中快速找到錯誤,迅速理解軟件失效的模式,但是并不關心從頭編寫代碼或者做修改。
2、你更愿意到一些開源網站上去閱讀別人的源碼。
3、在現實世界里你很愿意和其他人交流。
4、你心中的領導力是:扶助其他工程師的創意,用更高數量級規模的應用場景來挑戰他們的創意。
6、當被問到產品是否可以上線時,你可能會說:我覺得可以了。
總結
綜上(大概率是這樣的,大家別鉆牛角尖,沒有優劣之說):
-
代碼能力要求:SWE=SWT>TE
-
知識廣度要求:SWT/TE>SWE
-
溝通能力要求:TE>SWT>SWE
-
知識深度要求:SWE>SWT>TE
-
薪資待遇:SWE=SWT>TE(純粹意義的開發、測開和測試,當然國內很多公司自己都搞不清這幾個Title區別)
最后:?為了回饋鐵桿粉絲們,我給大家整理了完整的軟件測試視頻學習教程,朋友們 如果需要可以自行免費領取?【保證100%免費】
軟件測試面試文檔
我們學習必然是為了找到高薪的工作,下面這些面試題是來自阿里、騰訊、字節等一線互聯網大廠最新的面試資料,并且有字節大佬給出了權威的解答,刷完這一套面試資料相信大家都能找到滿意的工作。