軟件測試如何獲得高薪?


做自動化測試后悔嗎?

后悔,真的后悔!

后悔沒有早點學.....

雖然到處都在散播35+的焦慮,姑且信之,那么反問你,如果你30歲了,那么給你5年,能夠在某個領域成為專家呢?希望你能夠在焦慮的時代靜下心來思考一下職業的規划。文章可能有點長,預計閱讀時間8分鍾,希望在碎片化知識時代能夠引起你的短暫思考。

先說一下作為一個測試工程師,自己的“技能樹”應該如何點亮:

軟件測試如何獲得高薪?

 

看到這些,你還會說測試學的簡單嗎?

身為一名合格的測試工程師,是需要具備以下技能的:

  • 測試基礎理論/測試設計能力
  • 業務知識
  • 行業技術知識
  • 數據庫
  • 掌握編程語言
  • 搞定自動化測試
  • 質量流程管理

測試基礎理論/測試設計能力

比如說,邊界值分析、等價類划分、因果圖、判定表、正交實驗設計等,這些基本的測試基礎,科學的設計方法能夠很好的規范我們的行為,從而幫我們理清思路和提升效率。很多人會覺得簡答,從而忽視基礎的牢固程度,往往最基礎的地方,最難做到精通。

業務知識

這個看起來很虛,貌似沒有具體的知識點,但是做過測試的都知道,往往這部分是非常重要的。如果不懂得業務知識,那就是蠻干和瞎干。作為一個測試人員,最應該的是從用戶的角度去思考問題,而不是開發這邊,找到核心業務和功能,然后划分測試優先級,定級缺陷,另外尤其對於自動化也是非常重要。舉個例子,你只有掌握了業務的特性,才能夠用自動化的手段去首先覆蓋哪些場景,把寶貴的自動化資源投入到最重要的地方。

行業技術知識

說到行業知識就海了去了。並不是我我們會一點測試方法,會運行個腳本,使用個框架就完事了,要么說測試要求涉獵的地方比較廣呢,而且還得要求你精通。比如前端的技術棧、API設計、后端服務器、數據庫、服務架構等,如果這些知識都能夠打通,在面試的時候,面試官問你一個問題,你是能夠以點帶面的去闡述的,體現出來你絕對是一個優秀的測試工程師。

數據庫

無論你是做自動化和手工測試,都要進行數據效驗,SQL語言是測試工程師必會的技能之一,掌握SQL語言,然后在數據庫找到需要的數據,這個能力是必須具備的。

掌握編程語言

測試不寫代碼?那不叫測試工程師。特別是做測試開發來說,要從代碼層就開始進行質量把控,所以掌握語言的話,能夠讓你讀懂代碼,也能讓你直接定位缺陷,同時更早的去預估風險和難點。另一個方面就是自動化測試,去駕馭各種自動化測試框架以及用例的開發。

搞定自動化測試

對於UI自動化來說,掌握selenium和appium,非常的重要,尤其是移動端的appium,企業的重視程度更高,基本思路都是定位元素,然后操作元素,接着獲得反饋,最后用測試框架去管理測試用例。

另外對於接口自動化來說,從投入產出比來說,比UI自動化有很多獨特的優勢,比如運行速率高,開發和維護成本低,而且可以和開發代碼同步開發。簡單來說,就是通過模擬瀏覽器,發送請求實現接口的調用,比較返回值與期望值,驗證結果。

質量流程管理

最后要說的就是質量管理了,對於測試人員來說,並不是單純的去做測試,而是負責業務的質量保證。

  • 作為 DevOps 關鍵角色,未來的軟件測試工程師和質量人員必須同時具備一定的開發和運維能力。
  • 測試人員會更深入介入開發工作,通過“測試左移”,提前與開發人員一起制定測試計划,推動代碼評審、代碼審計、單元測試、自動化冒煙測試、測試精准化分析以及研發自測等來保證研發階段的質量;
  • 另外,測試人員會也會參與配置部署,將自動化測試用例配置到持續交付鏈中,並通過“測試右移”,全流程監控發布后的應用質量。

如果你想在測試行業成為專家,先要成為高級測開,可以接着往下看!

下面談談不同level的測試工程師應具備的基本能力

軟件測試如何獲得高薪?

 

第一個:我們稱之為測試員/測試工程師

直白一點說,就是干苦力活的。對標過來就是百度的T3、T4,阿里的P5,騰訊的T1-T2。主要的工作就是需求分析,測試方案,測試策略,測試執行,都是業務測試。當然你能夠掌握某些領域知識,比如你是測無人車的,無人車的業務是什么,我測AI,AI是什么,我去測大數據,大數據是什么,測的是電商,電商系統的架構是什么,業務知識是要懂的。再一個是帶外包團隊,可能會有一部分的外包團隊交給這一部分人去帶。主要是也就是管理這些基礎的業務測試工作。

第二個:測試開發工程師

現在第一個level是不怎么招了,多數都是從第二個level開始招。一旦提測試開發,就一定要求你懂研發,懂測試,並且有一定的深入工作的能力。從這個level開始要求你的編程能力了,Java、Python、shell、SQL,這是最基礎的,然后是業務測試。

這部分人仍然會負責一部分的業務測試的工作。老大會根據你的能力,給你安排一個比例。你能力很強,80%做技術,20%做業務,如果你能力不強,那就80%做業務,20%參與一部分技術。如果你的技術太low了,那就100%的全部做業務測試。所以這個時候會根據你的能力進行合理的時間划分。這里面的要求就比剛才突然間就拔高了,客戶端的UI測試,服務端的接口測試,性能測試,基本上都屬於這個范疇。

面試的時候,性能與非功能測試,可能不會做一個主面試點,主要還是在自動化和編程能力。也就是目前大家出去找工作,你們最容易被卡的這一關。所以在這個level里面,也是干活的,也就是既做業務測試,也做技術上的改造,以及去寫一些自動化,但是仍然是偏重於業務的。

第三個:高級測試開發工程師/測試架構師

那么到這個level,業務測試已經非常少,甚至完全沒有了,這個時候更多的是負責整個團隊的流程管理。流程管理體系,白盒測試體系,測試工具與測試平台的開發,再一個是質量監控,還有一個質量管理。通常一個團隊里面,會有一個測試的管理,加上1-2個高級的測試開發工程師,或者叫測試專家也行。他會搭建起整個的持續集成系統。持續集成、白盒測試、以及一些平台的開發,主要會交給這些人負責。然后他會帶2-3個測試開發工程師,這些測試開發工程師一邊跟着他去學習,一邊去做業務。然后剩下的活兒,交給外包公司或者校招的人去做。

 

對於一個測試工程師,核心的競爭力有哪些?

 

軟件測試如何獲得高薪?

 

專業技能:毋庸置疑,吃飯立足的根本,隨着你的測試技術的不斷深挖,你一定會覺得自己曾經的測試想法是非常淺顯的,先要走管理也好,甚至轉崗也好,技術的深挖都是非常重要的;

管理技能:能夠帶領團隊高效的運作,高效的完成任務,測試核心王道,當然也要保證團隊內部氛圍的和諧,促進團隊健康發展。你的技術到了一定的程度,自然會擔起一定的管理責任的。

學習能力:軟實力中最重要的一環,或許聽到的比較多了,但是作為過來人建議一點,人的精力有限,把你的有限精力聚焦在最重要的方向;

溝通能力:是不是聽起來有些上頭,耳朵都聽出繭子了,自古套路得人心,但是真誠永流傳;

影響力:測試這個行業,越往上,圈子越小,北京、深圳、上海、杭州這些的測試開發、架構師類的,如果有一定影響力的,相互之間交流和學習都是非常容易的。往往越是頂尖,越樂於分享。

不進步,就淘汰!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM