傳統測試工程師師應該具備的核心競争力
第一項核心競争力,測試政策設計能力
測試政策設計能力是指,對于各種不同的被測軟體,能夠快速準确地了解需求,并在有限的時間和資源下,明确測試重點以及最适合的測試方法的能力。
具備出色的測試政策設計能力,你可以非常明确地回答出測試過程中遇到的這些關鍵問題:
- 測試要具體執行到什麼程度;
- 測試需要借助于什麼工具;
- 如何運用自動化測試以及自動化測試架構,以及如何選型;
- 測試人員資源如何合理配置設定;
- 測試進度如何安排;
- 測試風險如何應對。
如何培養測試政策設計能力?
培養出色的測試政策設計能力,不是一朝一夕的事情,通常需要經過大量項目的實際曆練,并且你還要保持持續思考,主動去提煉共性的内容。
不像測試技術,你可以通過教育訓練或者網上資料的學習而有快速的提升,測試政策設計能力一定是需要你在大量實踐的基礎上潛移默化形成的。
第二項核心競争力,測試用例設計能力
測試用例設計能力是指,無論對于什麼類型的測試,都能設計出高效地發現缺陷,保證産品品質的優秀測試用例。
要做好測試用例設計,不僅需要深入了解被測軟體的業務需求和目标使用者的使用習慣,還要熟悉軟體的具體設計和運作環境,包括技術架構、緩存機制、中間件技術、第三方服務內建等等。
測試用例設計能力要求你不僅僅局限于熟悉業務領域的測試用例設計,而是能夠融會貫通,熟練地把系統性的測試設計方法和具體業務有機結合,對任何被測軟體都可以輸出出色的測試用例。
如何培養測試用例設計能力?
要想提高測試用例設計能力,你平時就要多積累,對常見的缺陷模式、典型的錯誤類型以及遇到過的缺陷,要不斷地總結、歸納,才能逐漸形成體系化的用例設計思維。
同時,你還可以閱讀一些好的測試用例設計執行個體開闊思路,日後遇到類似的被測系統時,可以做到融會貫通和舉一反三。
第三項核心競争力,快速學習能力
快速學習能力,包含兩個層面的含義:
對不同業務需求和功能的快速學習與了解能力;
對于測試新技術和新方法的學習與應用能力。
培養快速學習能力的小竅門?
- 當你學習一個新的開源工具時,建議你直接看官方文檔。
- 當學習新内容時,你一定要做到了解其原理,而不是隻停留在表面的、簡單的操作和使用。
第四項核心競争力,探索性測試思維
探索性測試是指,測試工程師在執行測試的過程中不斷學習被測系統,同時結合基于自己經驗的錯誤猜測和邏輯推理,整理和分析出更多的有針對性的測試關注點。
第五項核心競争力,缺陷分析能力
缺陷分析能力,通常包含三個層面的含義:
對于已經發現的缺陷,結合發生錯誤的上下文以及背景日志,可以預測或者定位缺陷的發生原因,甚至可以明确指出具體出錯的代碼行,由此可以大幅縮短缺陷的修複周期,并提高開發工程師對于測試工程師的認可以及信任度;
根據已經發現的缺陷,結合探索性測試思維,推斷同類缺陷存在的可能性,并由此找出所有相關的潛在缺陷;
可以對一段時間内所發生的缺陷類型和趨勢進行合理分析,由點到面預估整體品質的健康狀态,并能夠對高頻缺陷類型提供系統性的發現和預防措施,并以此來調整後續的測試政策。
第六項核心競争力,自動化測試技術
掌握自動化測試技術,可以把你從大量的重複性手工勞動中解放出來,這樣你可以把更多的時間花在更多類型的測試上。
第七項核心競争力,良好的溝通能力
測試工程師在軟體項目中作用,有點像“潤滑劑”:
- 一方面,你需要對接産品經理和項目經理,以確定需求的正确實作和項目整體品質的達标;
- 另一方面,你還要和開發人員不斷地溝通、協調,確定缺陷的及時修複與驗證。
測試開發工程師的核心競争力
首先既然是測試開發工程師,那麼代碼開發能力是最基本的要求。
第一項核心競争力,測試系統需求分析能力
除了代碼開發能力,測試開發工程師更要具備測試系統需求分析的能力。你要能夠站在測試架構師的高度,識别出測試基礎架構的需求和提高效率的應用場景。從這個角度說,你更像個産品經理,隻不過你這個産品是為了軟體測試服務的。
第二項核心競争力,更寬廣的知識體系
測試開發工程師需要具備非常寬廣的知識體系,你不僅需要和傳統的測試開發工程師打交道,因為他們是你建構的測試工具或者平台的使用者;而且還要和 CI/CD、和運維工程師們有緊密的聯系,因為你建構的測試工具或者平台,需要接入到 CI/CD 的流水線以及運維的監控系統中去。
除此之外,你還要了解更進階别的測試架構部署和生産架構部署、你還必須對開發采用的各種技術非常熟悉。
作者:茹炳晟