天天看點

10 | 軟體測試工程師需要掌握的非測試知識有哪些?

一個優秀的測試工程師,必須具備寬廣的知識面,才能設計出有的放矢的測試用例,保證整個軟體産品的品質。

與開發工程師相比,你需要了解的技術種類要多得多,視野也要寬廣很多,隻是在每類技術的深度方面不如開發工程師。

你可以參照下面這個比喻,來了解開發工程師和測試工程師的對知識的要求:開發工程師通常是“深度周遊”,關注的是“點”;而測試工程師通常是“廣度周遊”,關注的是“面”。

測試工程師需要掌握的非測試知識,幾乎涵蓋了當今主流軟體技術的方方面面。

  • 小到 Linux/Unix/Windows 作業系統的基礎知識,Oracle/MySQL 等傳統關系型資料庫技術,NoSQL 非關系型資料庫技術,中間件技術,Shell/Python 腳本開發,版本管理工具與政策,CI/CD 流水線設計,F5 負載均衡技術,Fiddler/Wireshark/Tcpdump 等抓包工具,浏覽器 Developer Tool 等;
  • 大到網站架構設計,容器技術,微服務架構,服務網格(Service Mesh),DevOps,雲計算,大資料,人工智能和區塊鍊技術等。

幾個比較重要又符合目前技術趨勢的關鍵知識點

網站架構的核心知識

你要掌握網站架構的核心知識,你不需要像系統架構師那樣能夠熟練駕馭各種架構,并根據業務選型,但你至少需要了解架構相關的基本知識以及核心原理。

容器技術

掌握 Docker 和 Kubernetes 的原理和使用方法。

選擇學習資料時推薦 Docker 官網的教程,在這裡你完全可以理清 Docker 概念以及具體使用方法,那再結合具體的實戰,相信你必定收獲頗豐。

雲計算技術

對于雲計算的學習,你的側重點應該是如何使用雲提供的基礎設施以及服務。我建議的高效學習方法是,參考你所采用的雲方案的官方文檔,再結合實際案例進行試用,學習效果會更好。

DevOps 思維

對于 DevOps,我建議的學習路徑是,你可以從深入掌握 Jenkins 之類的工具開始,到熟練應用群組合各種 plugin 來完成靈活高效的流水線搭建,之後再将更多的工具逐漸內建到流水線中以完成更多的任務。

前端開發技術

關于前端技術的學習路徑,通常你首先需要掌握最基本的 JavaScript、CSS、JQuery 和 HTML5 等知識,然後再去學習一些主流的前端開發架構,比如 Angular.js、Backbone.js 等。當然現在的 Node.js 的生态圈非常發達,你如果能夠掌握 Node.js,那麼很多東西實作起來都可以得心應手。

作者:茹炳晟

繼續閱讀