當前位置:
首頁 > 科技 > 測試人員職業發展之路

測試人員職業發展之路

在我們開始嘗試為大家描述軟體測試工作的多種可能性之前,先來看看在現在所知最近代的開發模式中,測試人員還會繼續存在嗎?因為如果連測試工作本身都不存在了,我們也沒必要進行後續的討論了。

很多做測試的朋友問過這樣一個問題:「現在敏捷開發模式中,自動化測試那麼流行,而且連開發人員都開始做測試了,是不是以後就沒有測試人員了?」

其實我在這裡可以肯定的告訴大家現實並不是這樣的。

首先我們需要討論的是分工的問題。人類的工業化生產最初也是不分工的,但隨著生產技術的複雜度提升,以及對於生產效率的更高要求,產生了分工;同樣對於軟體開發來說也是一樣,最開始並沒有測試人員和需求分析人員,而都是開發人員。也是隨著軟體項目的複雜度以及要求的提高,慢慢產生了工作種類的區別,由此產生了專門做測試的人員,也就是測試人員。由此看來,並不是有了測試人員這樣一個職位,才誕生了相應的工作和職責,而恰恰相反;那如果想取消這個職位,但是相應的工作和職責並沒有消除,在我看來無非就是把這個職位換一個名稱,或者是和別的職位的工作與職責重新排列組合而已。

其次我們需要明確什麼是測試的核心,是自動化測試,還是測試報告,亦或是探索性測試呢?其實都不準確,我認為測試用例設計才是軟體測試的靈魂。沒有恰如其分的測試用例設計,軟體測試很容易誤入歧途:導致沒有目標的盲目測試,不考慮投入產出比的自動化測試,不從全局優化的、割裂的單元測試、集成測試和系統測試等。測試用例設計也是需要熟練運用測試用例設計方法,並且結合測試人員的經驗和智慧才能設計出來的,這同樣是測試人員不同於軟體開發團隊中其他角色,需要不斷積累的關鍵一點。如果說在敏捷開發模式中,開發人員可以完成單元測試和自動化測試,業務分析人員也可以進行探索性測試的話,測試人員唯一不能被取代的就是測試用例的設計。如果說描述得更全面一些,即使要讓別的角色替代測試人員,至少他們也需要具備測試用例設計的能力,而這種能力需要長時間的鍛煉和運用才能具備。

最後,雖然測試工作並不會消失,但是測試人員也需要進化,需要跟隨新的軟體開發模式,不斷學習,不斷進步,保持自己的必要性和特殊性。舉例來說,在敏捷開發模式中,測試人員不僅僅是根據需求編寫測試計劃和用例,並且手動執行,給出測試報告就好了。而是需要測試前移,在需求分析階段儘可能地發現和預防問題,在開發過程中避免問題的產生,並且通過問題分析指導開發方向和改進措施;同時需要測試範圍擴大,不僅需要覆蓋軟體開發階段,還需要覆蓋產品上線部署以及運維的相關活動,甚至是通過分析用戶反饋來提高產品質量。可以看出敏捷中測試人員的任務和職責更多了,這就需要我們更加發揮自己的聰明才智,更高效地分析和解決問題,更快速地學習各項技能,同時注重各項實踐的運用。

既然測試工作並不會消失,而且敏捷開發模式帶給我們新的機遇和挑戰,那對於測試人員來說,職業發展的方向又有哪些呢?

首先我們需要明確想通過測試作為跳板,去做開發類和管理類等工作不在我們的探討範圍內。很多測試人員其實在選擇軟體測試作為職業的時候,其實更優先選擇的是軟體開發的職位,只是可能由於種種原因而與開發職位失之交臂,只好選擇了軟體測試作為自己的職業。一旦有了合適的機會,他們會選擇成為開發人員,這樣的職業發展不在我們的討論之列。另一類測試人員對於軟體測試其實沒有熱情,有且僅僅把軟體測試作為養家糊口的工作,希望通過工作年限的增長增加自己的薪水,更多希望工作時間短,不用加班,這樣可以保證更好的家庭生活。選擇這種工作和生活方式是個人自由,但是也不是我們想進行討論的。還有一類測試人員,希望通過短期的軟體測試工作中突出表現,得到管理者的賞識,從而進入管理層,這樣的職業發展也不是我們討論的。

其次我們現在所知道的最近代也是最流行,甚至可以說最先進的軟體開發模式是敏捷開發模式,所以我們對於測試人員的職業技能發展也是基於敏捷開發模式來分析的,如果有更新的開發模式出現,這些分析和定義也許會失效。

在知悉這兩點之後,那我們認為對於測試人員來說,在保證測試人員的獨特性,也就是做好測試用例設計的基礎上,職業發展大致可以分為以下幾類方向(如圖B-1):

圖B-1 測試人員職業發展方向

1)偏向於需求方面的測試人員。我們說過在敏捷開發模式中,測試前移,測試人員會更多地接觸需求分析,從需求分析階段儘可能地發現和預防問題。在這一方面現在已經有行為驅動開發和實例化需求等方法協助測試人員深入需求分析階段並擴大自己的影響力,與此同時測試人員也需要更深入了解產品所在的行業以及業務知識,成為業務專家,才能使得測試分析更有洞見。

2)偏向於開發輔助的測試人員。在敏捷開發模式中,開發人員不僅需要編寫單元測試的代碼,有可能還需要編寫自動化測試代碼,所以為開發人員提供好的工具,使他們能更快速、更準確、更全面地添加和執行測試也是測試人員可以發展的方向之一。

3)偏向於自動化測試的測試人員。正如上一條所說,開發人員有可能編寫自動化測試,同時測試人員也是可以自己進行編寫的。而且對於自動化測試,測試人員不僅需要分析項目的架構和技術棧,選擇最適合項目的自動化測試框架和編程語言,還需要從頭開始搭建自動化測試框架,並完善相關的自動化測試配套內容,諸如測試數據管理、測試並發執行、測試方法封裝、測試腳本的設計等內容。

4)偏向於運維的測試人員。測試不僅需要前移到需求分析階段,還需要覆蓋產品交付和線上監控及分析,以便快速發現問題和指導下一階段的開發。這就需要我們要了解更多和環境以及監控相關的技術以及工具,例如亞馬遜AWS,New Relic,Splunk和PagerDuty等。我們不僅需要熟練使用這些技術和工具,更重要的是分析從這些技術和工具得到的數據,形成有意義和目的的協助開發團隊提高的行動計劃。

5)偏向於專項測試能力的測試人員。測試人員不僅需要在知識的廣度得到發展,還需要深入特定的技術,稱為某項技術的測試專家,例如前端測試、資料庫測試、性能測試、安全性測試和可用性測試等等。這樣測試人員就不局限於某個特定的項目,而是變成了可以跨越項目的具備特定測試技術的技術專家。

6)偏向於測試諮詢的測試人員。測試人員通過在敏捷開發模式中測試深入開發的整個流程和細節,在具備了豐富的項目經驗和技術能力後,可以輸出對於軟體測試甚至整個開發過程的總結及認識,幫助更多的團隊解決當前的問題,提高團隊測試技術能力和意識,進一步優化產品的質量。這也是測試人員實現更大的自我價值的一種途徑。

7)偏向於測試能力建設的測試人員。在上一條發展路徑的基礎上,測試人員還可以進一步升華成為使開發團隊具備或者提高測試能力,進行測試轉型,甚至團隊轉型的關鍵性指導人物。而且通常這種測試人員會同時負責多個團隊,而且人數一般很少。

也許你認為前幾種測試人員相對來說更偏向於技術,容易在團隊內實現,而後幾種更像是給廣大的測試人員畫餅,並不一定能實現,只是描述一個可能性而已。其實這幾種測試人員的發展之路是根據我們實踐的測試人員的規劃得出的,也就是說我們是有真實的人物發展作為依據的。所以當大家被自己工作中的現實所打擊到的時候,不要動搖我們可以做更好更強大的測試人員的決心和目標,而是更努力的向那個方向努力。

最後,我們想告訴讀者:產品質量並不只是軟體測試人員的責任,而是需要整個團隊都關注的內容。只有給予軟體測試人員足夠的關注和重視,我們才能充分發揮每個人的特點,合力推動產品質量的進一步提高。從另一方面,軟體測試人員也需要意識到自身技能的缺失,強化技能水平,成為團隊可以依賴和值得信賴的一員。

點擊展開全文

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

Angular 有哪些地方比 Vue 更優秀?
9 款最好的免費博客網站全對比
史上最明了的「編程語言琅琊榜」介紹,比如Python是電鋸

TAG:CSDN |

您可能感興趣

試論醫療互聯網運營職業發展路徑
有趣的職業測試
職業規劃:SEO 職業發展思路
產品經理的職業發展
揭秘「潛水員」職業
想要在HR職業上長期發展,職業之路請從專職HR模塊開始!
HR必備職業興趣測試——霍蘭德人格與職業興趣測試
加快發展殘疾人職業教育
網路管理員職業規劃
軟體測試職業大洗牌
軟體測試職業 大洗牌
保時捷開啟職業教育發展新階段
《職業夢想之售貨員》
人社部發文:在工程技術領域貫通技術人才職業發展
推進職業教育高質量發展正當其時
明日之後職業選擇詳解:平民首選採集職業 大R去玩製造戰鬥職業
國家職業健身教練考試內容
設計師的頭銜與職業發展
我國加快發展殘疾人職業教育
史上最全職業測試和人才評估寶典,測算你的職業未來!