測試大咖漫談測試人職業發展

image.png

【本文做者介紹】思寒,資深測試架構師,霍格沃茲測試學院校長,開源自動化測試工具 AppCrawler 做者,有 10 餘年軟件測試開發經驗,曾任職於阿里巴巴,百度、雪球等公司。面試

有很多測試同窗反饋,2020 年好難啊,在各類壓力下,陷入了對本身和將來測試職業發展的迷茫。今天就一塊兒來重溫下經典,重塑信心,破解迷茫。經過本文分享下對測試工程師職業發展的見解,話題較大,不敢隨便亂寫,拋磚引玉,僅供你們參考。

1. 測試行業發展背景

微軟引領的大測試時代

中國最先的對 IT 工程的啓蒙和測試定位的探索大多來自於微軟。當年的大背景是微軟故意聽任 Windows 的盜版,並積極的輸出他自身的 IT 生態技術棧到中國。中國從政府到民間幾乎所有使用了 Windows。中國有大量的微軟認證的 VP 等各類專家。算法

微軟和他的附屬生態帶給中國測試行業的影響,簡單總結下:架構

  • 強調工程的嚴謹性。CMMI 一統天下。無數中國公司爲了經過這個認證費盡腦汁。大部分公司經過它也不是爲了本身的規範,而是爲了能拿到政府或者國外機構的外包業務。
  • 測試和研發的比例。由於都是客戶端產品。若是交付出去出現質量問題是很難解決的。因此測試被放在一個很是重要的位置上。測試與研發比一度是 1:2

外包公司發展迅猛。短短的幾年。中軟,東軟,軟通動力,博彥等公司迅猛的發展起來。框架

  • 測試技術的啓蒙和發展。主要是自動化爲主。在十年前的年代,聽一些前輩說,有公司作性能測試,就是有人用哨子吹下,而後一屋子的人就開始一塊兒點。因此當 QTP 和 LoadRunner 出現後,就迅速佔領了市場。
互聯網時代的測試發展

當互聯網世界開始爆發,測試行業的主要變化是:運維

  • CMMI 逐漸被互聯網公司忽略。國內崛起的公司有本身的業務,他們不屑於不實用的認證,開啓了本身獨特的野蠻發展的節奏。這也是以前在外企工做的白領有優越感的一個緣由。
  • 測試技術大發展。再也不是簡單的自動化測試,技術開始更加細化。好比單元測試,代碼動靜態測試,接口測試,持續集成,各類端的自動化測試。你們也再也不迷信 UI 自動化,而分層自動化,持續集成,測試即服務等理念開始流行。
  • 測試工程師技術型轉變。之前的測試工程師就是點點點,不會要求技術的。但如今 BAT 等一線公司已經所有推行技術筆試了。能夠說,不懂開發基礎的測試人已經難以發展了。點點點測試工程師已經退化到只能用於用戶端的功能校驗工做了。
  • 測試研發比:從 1:2 降低到了 1:三、1:5。
移動互聯網+創業浪潮時代的測試發展

移動互聯網爆發,IT 研發技術棧和雲計算服務也發展迅猛,這讓小公司的生產力有飛躍性變化,也催生了一場席捲全球的創業浪潮。這股浪潮起源於硅谷,並迅速經過"Copy to China"模式燒到了中國。另一個是中國大環境的變化,致使了外資企業生存困難,不少優秀的企業都從中國撤離。機器學習

這期間的測試行業發生了以下的變化:工具

  • 服務於國內企業的測試工程師開始增多。外包測試工程師,外企工做白領測試工程師都被外企撤離影響到了,開始逐漸轉到國內公司。外企工做的優越感逐漸喪失,國內的工程師開始崛起。
  • 敏捷理念盛行。SCRUM 和 XP 理念被迅速的普及。Scrum 迎合了產品管理的需求,XP 迎合了工程化發展的需求。各自發展都很迅猛,而後逐漸衍生了更深刻的 CI CD 和 devops 等模式。
  • 測試研發比。降低到 1:8 甚至更低。其實 BAT 都向往 google 的 1:10。只是國內目前作不到。
  • 大質量部模式被打散。爲了提升運做效率,QA 或者測試工程師團隊被逐漸分拆到各個具體業務部門。大質量部模式消失意味着測試工程師的發展開始遭遇天花板。不少人還沒能體會到這個模式帶來的巨大影響。
  • 測試技術新發展。測試平臺獲得了很大的發展。研發工程師,技術型測試工程師也開始逐漸發揮價值。好比新型的全鏈路壓測,全鏈路追,測試監控,各類接口測試和 mock 平臺,各類雲測和專項測試平臺。獨立的測試服務公司也開始層出不窮。
大數據和智能時代

人類已經進入 DT 時代。大數據,機器學習,深度學習,圖形渲染等技術棧也已經成熟了。隨之而來會造成新的生產力並落地到測試行業,這個階段你們剛開始感覺到。我暫時不作評論。性能

2.測試行業發展總結

之因此列舉過去的行業變化,實際上是爲了告訴你們,不要認爲目前的模式就是行業的長期現狀。目前不一樣企業仍然是處於不一樣的理念和不一樣的歷史階段中。沒有絕對的對錯,只有適合與否單元測試

這些變化都是圍繞着幾條核心的主線發展的:學習

業務發展

業務發展帶來了對質量和速度的追求。這是整個行業發展的主線

業務發展的需求影響到了產品研發和測試。它和資本同樣是貪婪的,無時無刻不在追求着突破瓶頸。追求更快更好的發展。它決定着不少公司的生死和不少行業工程師的前途。研發,產品,QA 都是要爲業務服務的。

技術發展

技術是生產力的重要組成部分,技術的發展是自帶加速度的。每次質變都會帶來一些行業重大的變動。技術的成熟度決定了測試行業的成就能作多大。

做爲測試工程師要善於利用當前的技術棧打造符合當前需求的解決方案。

管理髮展

公司主體在追求簡單高效的管理上是永不止步的。技術和工具的每前進一步,就意味着組織溝通的能力在加強。管理這個方向會逐漸的扁平化。高層管理會愈來愈少。一線管理會愈來愈多。

做爲測試行業比較尷尬的一點是大質量部模式模式的消失,讓測試行業的發展開始遭遇天花板。若是 Hold 不住研發和產品,在測試行業發展的人是無法往上有很好的晉升的。

3.測試工程師職業發展關鍵因素

薪酬數據參考

我根據測試人才的基本屬性並用實際的例子總結,按照 8 年跨度(08-16),總結了行業的一些典型人才的職業發展示狀(鑑於隱私要求,模糊了相關數據,與真實狀況略有誤差)。
image.png

我手裏也有更多的數據,以前也一直想搞個決策樹模型,可是一直沒完整的作出來。此次就先簡單列舉這幾個典型個案,簡要分析下測試人的職業發展關鍵因素。

職業上升的關鍵因素
  • 技術能力決定了你的薪資增加加速度。在月薪 1-3w 中間。技術能力助力會較多。
  • 管理能力決定了你的薪資階層。月薪 2-5w 是管理層基本薪資。後面的要靠公司的股票和獎金。
  • 業務能力決定了你的地位和長期回報。對業務的把控決定你在團隊的影響力和重視度,也關聯期權和股票的數量。
  • 運氣和選擇決定了你的人生軌跡。選擇的好就能得到最大回報。
  • 股票或者期權回報是超過工資的。選擇一家靠譜的可持久的公司很重要。

做爲我的發展,個人建議是紮實的提高你的技能,培養好你的人脈和軟實力。至於運氣和選擇不用焦慮,若是你有能力,天然會有高人拉攏你。好比以前就常常有朋友聯繫我,說是 XX 公司要發期權了,XX 公司要上市了,跟咱們一塊兒幹吧。人品好,技術好,你們都會喜歡與你爲伍的。

職場發展建議

  • 切莫在不應有的年齡追求權利

這會斷送你的整個前程。在一些面試場合,若是面試官問你願不肯意作管理,若是你回答是,那麼面試基本就掛了。必定要確認面試你的人是否是真的但願你走管理路線。大多隻是測試你是否是真的是個實幹家。

過早參與管理工做也會致使我的技能發展的不健全。這會爲之後帶來隱患。過於追求權力必然也會引起辦公室政治和各類利益鬥爭。因此請謹慎面對這個毒蘋果。

  • 在薪資和工做機會之間作合理的權衡

每家公司都有本身的薪資體系。你要參考這個數據來合理的肯定本身的薪資,不要有幻想。不要以爲別人由於某次成功的忽悠拿到多就懊惱。

一個優秀而紮實的工做經歷會讓你受益一輩子,會爲你的簡歷增光很多。對於這種機會降薪也值得去。

一個合理的節奏是,剛參加工做 1-2 年內主要是積累能力,薪資能餬口便可。2-5 年,能夠適當的跳槽追求更好的待遇或者更閃光的工做履歷。5年以上,就是要物色好的機會一飛沖天了。

若是跳槽太多,一些大公司也會很是的在乎,會影響你的面試。好比工做經驗不到一年或者兩年就跳槽的人,很容易被 BAT 認爲輕浮。

4.當下測試行業的發展

表面"衰落"的測試行業

鑑於過去的大形勢變化,不懂技術的測試工程師會逐漸被淘汰出局。一波測試工程師的失業潮是在所不免的。雖然早期我也呼籲身邊的人趕忙脫離落後的業務體系,脫離落後的測試技能,可是看到不少人愈來愈生活艱難,也是挺心痛的。

包括測試工程師的需求愈來愈少,招聘職位也愈來愈少,典型的新崛起的巨無霸公司好比 Facebook 早期都沒有 QA。甚至前幾年一度有 QA 團隊是否值得存在的爭論。表面看起來是測試行業衰落了。

有趣的是,你們討論 QA 團隊是否值得存在的初衷,是爲了更好的保證質量。這仍是挺回味無窮的。絕大多數的公司,都是很是支持 QA 部門的存在的,問題在於 QA 團隊的存在的價值究竟是大仍是小。

過去陳舊的測試體系,落後的測試人員能力,冗長的測試流程是被整個 IT 行業詬病的一個關鍵。當研發的生產力在逐漸的提高,運維的部署在逐漸的自動化,QA 所帶來的價值和耗費的成本就愈來愈不能忽視了。甚至成爲了一個項目的最大的成本。

這是任何一家公司都沒法忽視的問題。早年阿里巴巴的高管曾經集體去硅谷拜訪新崛起的巨無霸,獲得的結論就是他們的流程和執行力比國內強不少。甚至 Facebook 早年都沒有 QA 就成長爲大公司了。因此阿里就迅速推進了流程的裁剪。這部分包括裁撤 SQA,裁撤需求分析師,裁撤項目經理,削減 QA 名額。進入產品,研發,測試三足鼎立的最簡模式。

QA 會不會被撤掉也取決於這個部門的價值。因此不要想固然的以爲"存在即合理",如今部分的公司已經在試驗"無 QA"的模式了。互聯網行業惟一不變的就是變化。

好比一個典型的例子,在搜索,推薦,機器學習等方向的算法測試是很重要的領域,是須要專業的測試工程師參與的。這個行業能容納不少的測試團隊。可是測試行業這些年就沒造成對這個領域的正確測試方法,結果最後丟失了這個市場。如今都是研發本身保證了。由於找不到合格的測試工程師去保證這個業務。

一樣在性能測試領域也是如此,隨着性能測試平臺,全鏈路壓測,性能監控,AB Test,雲壓測這類技術和服務的出現,性能測試工程師的需求也會縮小。愈來愈多公司裏的性能測試都已經變成研發主導了。丟失了這塊的業務,性能測試 QA 的需求量天然會受影響。

必定要記住,業務空間決定 QA 的生存空間,這是全部行業都通行的道理。若是你不能知足業務需求,就會被淘汰出局,要麼選擇退守防護要麼選擇敢於接受挑戰。

那測試行業的將來是什麼樣的那,不少人會擔憂。不過我仍是總體樂觀的。由於我喜歡整個行業,這些年也一直在進行不斷的思辨。這裏說下個人見解。

測試從業人員的規模

從業人員規模跟生產力負相關,跟業務規模正相關。之後能有多大取決於技術和業務規模的雙重因素。

首先,是大環境因素。隨着各類行業的互聯網化,IT 行業在擴大, 外賣,美甲,甚至是無人機汽車航天產業都將成爲科技公司。研發的隊伍會擴大,QA 的隊伍天然也會總體擴大。前提是 QA 本身要跟得上時代。

其次,是隨着生產力提高天然就不會須要這麼多人的。哪一個行業都這樣,測試行業並不特殊。就跟汽車行業同樣。早年堆人,而後堆工具,堆技術,上機器人,改進流程。

行業技術改進,測試技術改進,測試工具和測試服務的改進,都會必定程度提升了測試效率,減小了成本。這種改進會致使 QA 的團隊更精煉高效。

人數多意味着你們的價值跟富士康工廠裏的工人同樣廉價。追求高附加值纔是正確的路。這對公司和測試團隊都是共贏的。

第三個因素是行業地位。Devops 的流行是推進了研發和運維的密切合做。一旦這個階段完成,產品的生產部署會很是的流暢。隨之而來的就是問題會愈來愈早的暴露,你們對質量會更加的重視。到時候就會進入一個新的時代,DevQA

運維逐漸會管道化,Dev 和 QA 會成爲新的主角。只是到時候能撐大局的不必定是如今的軟件測試工程師了 會是新時代的測試工程師。

測試行業會愈來愈專業。人才,技術,工具,開源平臺,服務會愈來愈多。愈來愈完善。術業有專攻,專業化分工仍然是大趨勢。

技術層面上也會有創新。之前的測試只能留下測試用例和業務知識文檔,沒有什麼連續性積累。

隨着接口測試,質量監控,覆蓋率分析,業務建模等技術的突破, QA 也會造成本身穩定可積累的業務數據, 並逐漸造成本身的平臺和業務。

業務空間 + 技術門檻的雙重因素,是我堅信 QA 部門能長期存在的一個核心緣由。

5.迎接測試行業的變化

測試行業的管理會逐漸扁平化

幾乎大部分的互聯網公司都在分拆業務和 QA 團隊,從而提升執行力。因此管理上百人的總監職位會愈來愈少,而管理百人如下的總監會愈來愈多。不排除少許的巨無霸仍然沒有改變。或者有些燒錢的初創公司倒行逆施。

其中這些測試管理者會遇到一些新的挑戰,好比更高層是研發出身居多。不懂研發體系幾乎沒有發展空間了。測試管理體系失去了上層建築,對將來的影響仍是深遠的。會有陣痛,可是結果確定會是好的。

測試技術人才需求增多

緣由是多方面的。大公司由於分拆的問題。再也不有統一的測試技術支撐部門,因此分拆以後的每一個團隊都須要組建對應的職能團隊,對測試技術人員的需求反而會增多。

中小型公司也苛求質量保證效果,不止是要好,並且要求更快,也須要大量的技術人才。這幾年經過各類招聘網站的招聘 JD 的描述也能看得出來。

外包測試的災難和新生

原來作歐美日韓外包業務的公司會由於國內互聯網的發展逐漸式微,他們須要轉型作國內。可是國內對外包業務也大多排斥,並且外包業務在效率溝通管理上都有諸多弊端。其自身也沒法承載對測試工程師的培養和長期發展。因此這幾年會有大量的外包測試工程師轉型。

這方面須要有新的優秀的外包服務公司。能作到有本身的測試服務,測試技術和高級的測試研究工程師才行。好比東軟也開始作本身的各類雲測平臺之類的,就是一種爲了迎合新時代的變動。

不懂開發的測試工程師已是新時代的文盲

第一個是工做上已經沒有太大的晉升空間。第二個是也很難跳槽。最好的結果是憑藉多年的經驗轉管理。

我跟行業的不少測試經理交流過,大部分工做超過 6 年的人,在測試執行上會倦怠,在測試技術的改進上已經沒法入門,還不如招實習生。相對來講,有技術基礎的人在工做 8 年以上仍然會保持本身的學習熱情。

因此將來測試團隊的架構基本會是多數業務測試工程師 + 少數測試專家 + 測試經理的管理模式。

之前不識字的是文盲,後來是不識英文的是文盲,在繼各國呼籲增強對 IT 技術的重視後,新時代的文盲就已經快是不懂開發的人了。

測試行業的門檻增長

之前處於發展期,行業對人才的苛求是第一位的。如今隨着大公司發展穩定,招人已經穩定了。

他們基本只在 211 院校校招。社招也看學歷。初創公司可能是融資燒錢爲主,在學歷上和閱歷上也是看的很高。可以不拘一格降人才的公司會愈來愈少。

我以前推薦了很多同窗去其餘優秀的公司,其中有一部分同窗就是技術不錯,可是學歷未過關。因此但願你們技能和學歷上可以好好的重視這個問題。除了學歷門檻,如上一條所說技術門檻也存在。因此加油吧,少年!

測試行業的薪資在提升

測試行業通過自身的淨化洗滌會有新生。典型的變化就是薪資從之前的 3k-15k 的範圍,總體提高到 1w-3w 之間。

技術含量的提高,責任的提高必然會帶來總體的回報。如今測試工程師只要技術好,學歷沒問題。工做 3 年拿個兩三萬的月薪是很日常的。

研發工程師進入測試領域

這些年整個 IT 行業對測試行業的發展很是不滿意,通俗點講,你們都以爲測試很 Low,可是又不能沒有。研發提交項目給測試的心情就跟之前過年要去火車站排隊買票同樣。要申請測試資源,給測試講解業務和實現,遇到比較 low 的或者新入職的,連搭建環境都不會,還得手把手教。

研發只是修改一行代碼,QA 或者測試那邊就炸鍋了。各類流程足以讓研發頭髮都能掉好幾根。

做爲參考對比,再思考下運維。當年部署個環境跟提交測試很像。要申請運維的介入,要申請機器資源,而後提交部署文檔,還要明確基礎環境,依賴庫等各類細節的版本號。

遇到本地發佈環境不行之類的問題還得跟運維撕逼。當年運維行業還流行着一句," 人 " 纔是最關鍵的發佈保證者。

而如今隨着持續交付和 DevOps 的流行。發佈都已經作到"絲般柔滑"了,一鍵發佈,自由選擇灰度,平時的發佈甚至都不須要運維參與。嘗試了新模式的甜頭後,對測試行業的弊端已經很難忍受了。

因此在優秀的測試工程師和測試架構師難找的狀況下,已經有愈來愈多的公司選擇直接用研發工程師來頂了。他們的追求很簡單。單測->接口測試->基礎的冒煙測試,可以作到自動化就能夠了。若是能像運維那樣作成測試即服務就更完美了。

總結

我一直堅信,QA 的價值是很是的大,測試行業在通過此次調整後也會發展的很好。至於說將來能有多輝煌,就要看你們的努力了。

6.測試職業發展建議

測試行業和其餘行業的發展沒有本質的區別。這些年都已經規範化了。通常的公司都會有兩條路線發展。一個是 P 或者 T 簡稱的技術路線,一個是 M 的管理路線。

每一個方向都有很大的發展空間,級別也是不少,年薪也是從 20w 到 100w 以上都有。稍大的公司大都是並行發展的。小公司可能就只有管理路線可走了。因此作技術的同窗,最好是在大公司發展,去小公司就要適當調整本身工做重心。

測試技能發展

首先技能和技術只是過程,業務的質量纔是目標。

一個合格的優秀的測試工程師,應該是能作到以下幾點:

  • 懂業務。能紮實的保證業務質量。不排斥用腦力和體力去保證質量。
  • 懂技術。可以作深刻的自動化或者分析工做。可以利用工具和技術解決問題。
  • 懂架構。可以跟研發和產品進行正常的交流,保證產品需求和實現都沒問題。能帶團隊走上更好的發展。
成長爲測試開發工程師

而隨着敏捷開發、DevOps、持續交付的流行,軟件測試人員必須成長進階爲測試開發工程師,同時具有必定的開發和運維能力。
image.png

測試開發工程師會經過測試左移,更深刻介入開發工做,提早與開發人員一塊兒制定測試計劃,推進代碼評審、代碼審計、單元測試、自動化冒煙測試、測試精準化分析以及研發自測等來保證研發階段的質量。

測試開發工程師會也經過測試右移,參與配置部署,將自動化測試用例配置到持續交付鏈中,並全流程監控發佈後的應用質量。總之,做爲 DevOps 關鍵角色,測試人員將推進開發和運維共同實現高效交付高質量產品的目標。

但這裏想強調一點,並不看好只開發測試工具的測試開發工程師。開發一款測試工具,設計一個更好的測試框架,發明一種更先進的測試手段。這是我的成長帶來的天然成果,但不是目標。

不少人會以爲開發測試工具的測試開發是有前途的,其實也不是。只是他碰巧遇上了測試行業的技術轉型期的須要。我記得在百度的時候,好多負責單測工具,單測框架的維護團隊,常常凌晨兩三點還在修復 Bug。可是幾年過去,這些人的努力大多沒有很好的回報。

這是由於他們作的事情脫離業務目標太遠。一旦完成目標,他們也容易被「管道化」,成爲邊緣角色。這個行業除了極少數技術的狂熱愛好者,可以找到本身在行業的技術地位外,大多數人都應該去追隨業務的發展。業務纔是測試的根基

測試行業和之前的戰國時代同樣,成爲一個統帥團隊叱吒風雲的將軍,仍是成爲一個打造兵器滿懷工匠精神的鐵匠,都是值得尊敬的。在冷兵器時代排兵佈陣管理就是王道,在熱兵器時代下技術和科技是重要力量。這個須要看每一個人的愛好和追求。明確本身的發展方向和愛好就能夠。

關於測試技術路線,個人建議是:

  • 多讀書。能系統的瞭解不少東西。
  • 多看別人的代碼。他山之石能夠攻玉。別人的開源代碼裏面藏着不少的經驗和智慧。要善於學習。
  • 早期多造輪子。這是一種不斷演習的強化鍛鍊。能夠強化本身的技能。
  • 多承擔開源維護工做。儘量的參與開源社區的維護工做。跟這些人的協做你能學習到不少有用的實踐知識。可以強化本身的溝通協調和架構設計的能力。
  • 多泡論壇交流。閉門造車,敝帚自珍,固步自封都是沒什麼成長的。跟這些保守的人交流你也學不到太多。
  • 打怪升級。從部門裏一件件的改進作起,實現把技術轉化爲生產力。

測試管理髮展

之前純作測試團隊管理的人估計是很難適應互聯網行業的變化了。可能要面臨着諸多的挑戰。須要增強自身的能力建設。

很多早年作了管理的同窗如今有些其實都開始後悔了,弄的高不成低不就。現象就是總監升不上去。經理級別沒亮點也不能升級別。業務發展通常,團隊也沒變化,而跳槽最怕遇到筆試或者技術測驗。

真正能作好測試管理的精英仍是蠻少的。若是踏入這個行業,應該多關心以下的事情

  • 能幫你作事的人才和團隊:沒有給力的隊伍是作很差的。
  • 「混圈子」:結識更高級別的 CXO。這是未來的發展須要的。
  • 多讀書:多學前人的管理和溝通經驗,跟得上行業發展的步伐。
  • 修身養性:魅力、氣場、名望、實力、人品都是取信於人的關鍵。

管理相對技術在大公司向上發展是比較難的。通常跳槽到初創公司是最容易變現的。好比一個 BAT 的測試經理,月薪不過是 2w 多的樣子。跳槽到創業公司作測試管理。月薪就到 3w-5w 了。甚至能力上去,直接跳槽過去當高管和 CTO 的也很多。管理這塊,我就不班門弄斧了。

結語

以上只是侃侃而談,沒有什麼深度,僅供參考。由於帖子過長,原來提到的一些技術話題,我先暫時剝離出去了,之後再寫獨立的技術篇。(end)

免費領取:接口測試+性能測試+自動化測試+測試開發+測試用例+簡歷模板+測試文檔

相關文章
相關標籤/搜索