軟體測試人員能力矩陣
軟體測試人員能力矩陣
在國內,軟體測試走過了一段崎嶇的發展之路。從不被重視,不設置崗位,變成目前越來越被重視,招聘市場越來越火熱,高校也紛紛開始設立軟體測試專業,重視軟體測試。現在互聯網+的時代,賣方市場不存在了,各個軟體的競爭已經是資本與市場的白熱化反映,沒有任何一個產品敢「愛用不用」了,畢竟市場推廣成本都不低,如果因為軟體的質量不好被客戶放棄,損失還是比較慘重。
引子
目前的市場,以深圳為例,根據職友集的統計,最近30天,軟體測試的招聘市場需求崗位為32766,為軟體開發職位的兩倍。從這裡我們可以得出:軟體測試人員的職位缺口大。然而目前市場上的軟體測試人員能力參差不齊,高水平的候選缺乏,大量的初級水平的候選充斥市場,導致人員基數大,市場需求大,招聘難度更大。所以更現實的有效的方式,應該是提升初級水平的軟體測試人員的能力,更多的軟體測試人員達到高級甚至資深的層次,實現個人,企業和行業的三方共贏。
這裡我們來聊一聊軟體測試的能力矩陣,從技術能力、項目能力和業務能力三個維度,分別討論從初級到高級到資深水平的能力值。
技術能力
技術能力體現的是對技術手段的運用能力,在軟體測試過程中製造和使用工具的能力。
站在進化論的角度,能夠製造和使用工具,是早期人猿進化成人類的分水嶺,當然也是區分人類與其他動物的本質區別。當然在軟體測試中,能夠製造工具,使用工具,也是衡量軟體測試人員的技術能力的基本標籤。
嚴格的講,不會使用工具的軟體測試人員是不存在的。哪怕純粹「確認眼神」的手工測試,至少能夠使用Windows操作系統吧,至少能夠使用瀏覽器吧。這些都是算工具的。
這裡我們以下面的幾個因素來衡量軟體測試人員的技術能力:
- 操作系統:使用操作系統是基本能力,尤其是伺服器端的Windows Server與Linux。
- 瀏覽器:目前主要的大眾軟體的運行場所,離不開瀏覽器。但是真正用好瀏覽器的軟體測試人員,事實上並沒有那麼多。
- 項目工具:國內常見的有禪道、TAPD(騰訊敏捷平台)等,以及還有國外的JIRA、ALM(HP QC)、Tuleap、Rally、QA Complete,還有企業自主開發的,功能類似,目前大多集中在敏捷(Agile)的處理上。
- 測試理論:這個毋庸置疑,軟體測試的系統理論,決定了很多人員的職業發展高度。
- 測試工具:從普通UI功能、自動化測試,到介面契約測試、性能測試、安全滲透測試等各種工具的使用,無論商業版還是開源版,都是體現測試人員能力水平。尤其是能夠綜合現有工具(開源版)而構建出符合企業要求的定製測試方案,就更為重要。
- 編程工具:編程是目前的軟體測試人員普遍欠缺的一部分,編程並不是為了去研發出產品,像開發人員一樣,而是作為幾乎唯一一種人類與機器交流的方式,如果需要機器做更多事情,那麼必須掌握能與機器溝通的語言。編程語言是很好的途徑。
- 學習方法:IT行業是持續發展的行業,技術的更新很快,那麼需要持續不斷的學習,對於新的知識、工具、方案等能夠很快的學好,上手使用並創造生產力,非常關鍵。
讓我們來看看各個級別的軟體測試人員對應的矩陣。
項目能力
項目能力體現的是對IT項目管理的適應能力,能夠在實際項目中體現自身的價值,幫助項目團隊交付高質量的產品。
項目能力往往是靠單獨學習得不到的,必須經過長時間的實踐、總結,來提升自己。筆者見過很多「十年如一日」的軟體測試人員,其實相當悲觀。工作十年,積累的的項目能力相當於第一天的水平,誇張了點,但是確實很多類似的人員。
我們列出來項目能力的指標與因素,幫助更多的從業人員有更好的方向,避免「十年如一日」的產生。
這裡我們以下面的幾個因素來衡量軟體測試人員的項目能力:
- 測試流程:測試的工作流程,是只能夠「執行」,還是可以「驅動」?
- 項目流程:適應項目組的工作方式以及項目驅動方式,常見的有「瀑布」與「敏捷」。
- 項目理論:在項目管理方面,是否有更好的理論基礎,了解軟體生命周期,了解敏捷開發?
- 任務估時:能夠準確的評估自己的工作能力和用時,是一個非常重要的指標。
- 項目並行:同時處理的項目,如果永遠都是一個,那麼說明你的項目水平還是有欠缺。讓我們來看看各個級別的軟體測試人員對應的矩陣。
業務能力
業務能力體現的是對用戶故事(需求)的分析和理解能力,能夠充分的理解產品的業務流程,通過對業務流程的分析,勾畫用戶使用行為,確認驗收標準。
或許有的小夥伴會質疑,為什麼要考慮業務能力?不是有需求分析師(BA)么?不是有需求說明書(SPEC)么?
一位合格的軟體測試人員,應該能夠合理的,快速高效的分析需求,對需求的分析與理解能力和層次,決定了你的工作高度,不是么?如果只能夠停留在「輸入框」與「是不是好看」這些方面,那麼你的測試層次,就只是在入門的層面哦?因為你的工作,是不是你爸媽也可以替代呢?
這裡我們以下面的幾個因素來衡量軟體測試人員的業務能力:
- 需求分析:基本功啦,測試的雙V原理(驗證做正確的事情,驗證正確的做事情),如果你不會需求分析,如何知道需求是否是「正確的做事情」呢?細思極恐呀。
- 流程分析:沒有流程,就沒有測試,是這麼個道理吧。
- 文檔能力:有沒有發現,會寫文檔的小朋友,領導都喜歡?另外建議學會Markdown語法與工具,增加文檔的技術含量。
- 數據分析:最後這條,其實是從軟體測試人員,邁向軟體測試管理人員的必經之路啊。讓我們來看看各個級別的軟體測試人員對應的矩陣。
總結
上述的三個維度,我們簡單的闡述了軟體測試的能力矩陣,其實不難看出,解決問題的能力尤其重要,在每一個維度中,資深級別的描述,都具有很強的解決問題。
本文我們簡單的分析了技術、項目與業務三個維度,希望可以能夠幫助到從事軟體測試的各位小夥伴。另外也非常歡迎各位的討論,如果您有其他方面的想法,歡迎與作者交流溝通:liu.tingli@qq.com。有任何的不足之處,也敬請指出,共同進步。
推薦閱讀:
※軟體測試之資料庫常用查詢語句
※關於PWA(Progressive Web App)的一些測試思考
※軟體測試面試題-Linux面試基礎考題~~
※Testing Mobile Apps Using Katalon Studio
※動態回歸VS精準回歸