很多做測試的朋友問過這樣一個問題:“現在敏捷開發模式中,自動化測試那么流行,而且連開發人員都開始做測試了,是不是以后就沒有測試人員了?”
其實測試工作并不會消失,而且敏捷開發模式帶給我們新的機遇和挑戰,那對于測試人員來說,職業發展的方向又有哪些呢?
測試人員的職業選擇
首先我們需要明確想通過測試作為跳板,去做開發類和管理類等工作不在我們的探討范圍內。
很多測試人員其實在選擇軟件測試作為職業的時候,其實更優先選擇的是軟件開發的職位,只是可能由于種種原因而與開發職位失之交臂,只好選擇了軟件測試作為自己的職業。
一旦有了合適的機會,他們會選擇成為開發人員,這樣的職業發展不在我們的討論之列。
另一類測試人員對于軟件測試其實沒有熱情,有且僅僅把軟件測試作為養家糊口的工作,希望通過工作年限的增長增加自己的薪水,更多希望工作時間短,不用加班,這樣可以保證更好的家庭生活。選擇這種工作和生活方式是個人自由,但是也不是我們想進行討論的。
還有一類測試人員,希望通過短期的軟件測試工作中突出表現,得到管理者的賞識,從而進入管理層,這樣的職業發展也不是我們討論的。
測試人員的技能發展
其次我們現在所知道的近代也是,甚至可以說的軟件開發模式是敏捷開發模式,所以我們對于測試人員的職業技能發展也是基于敏捷開發模式來分析的,如果有更新的開發模式出現,這些分析和定義也許會失效。
測試職業發展方向
在知悉這兩點之后,那我們認為對于測試人員來說,在保證測試人員的獨特性,也就是做好測試用例設計的基礎上,職業發展大致可以分為以下幾類方向:
1、偏向于需求方面的測試人員
我們說過在敏捷開發模式中,測試前移,測試人員會更多地接觸需求分析,從需求分析階段盡可能地發現和預防問題。
在這一方面現在已經有行為驅動開發和實例化需求等方法協助測試人員深入需求分析階段并擴大自己的影響力,與此同時測試人員也需要更深入了解產品所在的行業以及業務知識,成為業務專家,才能使得測試分析更有洞見。
2、偏向于開發輔助的測試人員
在敏捷開發模式中,開發人員不僅需要編寫單元測試的代碼,有可能還需要編寫自動化測試代碼,所以為開發人員提供好的工具,使他們能更快速、更準確、更全面地添加和執行測試也是測試人員可以發展的方向之一。
3、偏向于自動化測試的測試人員
正如上一條所說,開發人員有可能編寫自動化測試,同時測試人員也是可以自己進行編寫的。
而且對于自動化測試,測試人員不僅需要分析項目的架構和技術棧,選擇適合項目的自動化測試框架和編程語言,還需要從頭開始搭建自動化測試框架,并完善相關的自動化測試配套內容,諸如測試數據管理、測試并發執行、測試方法封裝、測試腳本的設計等內容。
4、偏向于運維的測試人員
測試不僅需要前移到需求分析階段,還需要覆蓋產品交付和線上監控及分析,以便快速發現問題和指導下一階段的開發。
這就需要我們要了解更多和環境以及監控相關的技術以及工具,例如亞馬遜AWS,New Relic,Splunk和PagerDuty等。
我們不僅需要熟練使用這些技術和工具,更重要的是分析從這些技術和工具得到的數據,形成有意義和目的的協助開發團隊提高的行動計劃。
5、偏向于專項測試能力的測試人員
測試人員不僅需要在知識的廣度得到發展,還需要深入特定的技術,稱為某項技術的測試專家,例如前端測試、數據庫測試、性能測試、安全性測試和可用性測試等等。
這樣測試人員就不局限于某個特定的項目,而是變成了可以跨越項目的具備特定測試技術的技術專家。
6、偏向于測試咨詢的測試人員
測試人員通過在敏捷開發模式中測試深入開發的整個流程和細節,在具備了豐富的項目經驗和技術能力后,可以輸出對于軟件測試甚至整個開發過程的總結及認識,幫助更多的團隊解決當前的問題,提高團隊測試技術能力和意識,進一步優化產品的質量。
這也是測試人員實現更大的自我價值的一種途徑。
7、偏向于測試能力建設的測試人員
在上一條發展路徑的基礎上,測試人員還可以進一步升華成為使開發團隊具備或者提高測試能力,進行測試轉型,甚至團隊轉型的關鍵性指導人物。
而且通常這種測試人員會同時負責多個團隊,而且人數一般很少。
因此,軟件測試并不是可有可無的技術人員,相反只要你堅定信念鎖定目標,軟件測試也會是你大展宏圖的機會。粵嵌軟件測試培訓班,擁有的老師和同學,陪伴你在軟件測試行業踏出踏踏實實的步。