初、中、高階測試工程師成長指南

測試奇譚發表於2021-01-11

大家好,貼一篇自己的總結文。

起因

自從開博以來,很多小夥伴詢問我零基礎如何轉行軟體測試、軟體測試該學什麼、中級和高階測試需要掌握哪些技能之類的問題。

為了讓大家系統的瞭解軟體測試,掌握合理、正確的學習方法和目標,我製作了一個學習 & 成長列表,你可以根據該列表制定自己不同階段的學習 & 成長計劃。

tips:

  1. 斜體字表示有連結文章,第一次在TesterHome發文,守規矩,不貼鏈(需要的話,可自行在網路上搜一搜:測試奇譚
  2. 本文長期更新
  3. 本文只談測試工程師路線,管理路線暫時不談
  4. 分級因人而異,因公司而異,根據所需拿取

測試基礎

無需多說,必須重點掌握!!!一切技術皆由理論發展而來。

01 學習內容

①職業介紹:IT公司和網際網路公司各崗位的工作職責,如開發、測試、產品、設計、專案經理等

②軟體流程:研發模型、研發流程、版本迭代、專案需求、需求文件、測試流程、上線流程等

③測試設計:測試計劃、測試方法、測試用例、測試管理工具

④BUG:定義、分類、生命週期

02 學習程度

初級-能夠理解並說出這些概念,能自己組織語言講懂給一個不是測試行業的人

中級-完全理解,能夠結合工作理解基礎,明確每一個概念的真正意義,有自己的反思和總

高階-完全吃透,隨著思維和技能的提升,起於基礎,又歸於基礎,以解決問題為導向

03 學習方法

職業介紹百度即可。

其他建議看理論書籍,花一到兩週時間系統學習,最好不要百度。

自學軟體測試,該讀寫什麼資料?

測試分類

01 功能測試

亦稱黑盒測試,常被調侃的點點點工程師,分app測試(手機上的應用程式)、web測試(瀏覽器訪問的網頁)、介面測試(訪問服務的資源路徑)三種。

別管網友如何調侃,如果你能成為業務專家,點點點,未嘗不可。

偏題了,害~

初級-根據公司要求,會其一,瞭解另二,最好了解介面測試

什麼是介面測試?這篇文章讓你明白
分享一份適合練手的介面測試實戰專案
分享一份適合練手的軟體測試實戰專案
自學軟體測試,缺少專案實戰怎麼辦?

中級-三者都通;業務水平在專案組中等偏上

移動端應用測試需要考慮的崩潰場景

高階-三者都精通;業務精英或者業務專家,可懟產品,能給建議;有全域性意識,逆向思維,破壞性思維,主人翁意識

全鏈路測試:容易忽略的上下游超時時間

02 效能測試

初級-無要求,掌握是加分項

中級-熟練使用主流的效能測試工具,如jmeter、loadrunner等,有相關效能壓測經驗;能手擼壓測指令碼;瞭解服務架構設計,瞭解效能分析,能協助開發調優

高階-另一條專職專崗的技術路線——效能測試工程師,調優、架構、壓測平臺玩得有模有樣。對技術要求特別高,不建議走此路,除非你真的喜歡,有天賦,肯努力

03 白盒測試

重溫黑盒、白盒與灰盒測試方法

初級-無要求,簡歷上寫了是減分項,除非你真懂

中級-多少知道一點開發的程式碼架構設計,會bug定位,瞭解程式碼走查,程式碼診斷,程式碼審查等

bug定位與總結系列

高階-技術專家,部門帶頭人。對技術要求特別高,不建議走此路,除非你真的喜歡,有天賦,肯努力

04 安全測試

初級-無要求,簡歷上寫了是減分項,除非你真懂

中級-多少知道一點滲透測試、SQL隱碼攻擊、XSS攻擊、暴力破解等

安全測試02:sql繞過認證
安全測試01:探測應用程式

高階-另一條專職專崗的技術路線——安全測試工程師,準黑客或黑客級別

05 自動化測試

具備編碼能力,以開發app自動化、web自動化、介面自動化、PC自動化、資料自動化、各類自動化平臺專案

初級-無要求。瞭解常用的自動化框架即可

中級-掌握一種或兩種程式語言;熟練編寫自動化測試用例和指令碼,能夠深入到自動化測試框架的方法層;會debug

自動化測試系列

高階-已經掌握各類開發技術,充分了解各編碼語言、各自動化框架的優缺點,深入到自動化測試的架構層,具備框架開發能力,能根據工作需求進行設計,能開發自動化測試平臺、效能平臺等,能獨立承擔中大型自動化測試專案

為什麼你做自動化測試總是難以提升?

測試技術

01 網路協議

初級-初步瞭解TCP/IP、HTTP、HTTPS等知識,包括但不限於瞭解一個url訪問的生命週期,區分get請求和post請求,知道cookie、session等;會抓包

Fiddler抓包指南02:重要函式和快捷操作
Fiddler抓包指南01:認識Fiddler
Fiddler除錯權威指南

中級-結合工作,能在各種複雜場景下的追溯請求;懂抓包;懂mock;懂篡改請求響應資料等高階-掌握網路程式設計技術

02 Linux

目前,大多數公司的伺服器部署在linux系統上,且雲服務正盛,故需要掌握該技能

初級-會用常用命令,如檢視,複製貼上、訪問日誌等

中級-安裝軟體,搭建服務,會排錯;shell初級指令碼;能手擼Linux三劍客之一grep;瞭解雲服務知識

高階-會問題排查,熟悉系統指標;shell高階指令碼;正規表示式;能手擼Linux三劍客另二之sed、awk;熟悉各類雲平臺及服務

04 編碼能力

同上面講的白盒測試和自動化測試,有些許相似之處

初級-無要求,瞭解基本語法。非科班專業,建議學python

極簡python教程:賽前說明

中級-獨立或部分獨立完成一個專案

高階-獨立完成一個複雜專案;熟悉常見架構,分散式系統;能實現後端服務,具備全棧開發能力

05 版本交付

初級-無要求,但要知道什麼是版本管理和版本交付,知道git和svn工具,瞭解Jenkins

中級-隨著自動化測試的進行,編碼技術的提升,自然會掌握該技術

高階-沒啥說的,看程式碼,合程式碼,控制專案版本,CI/CD

06 資料庫

初級-安裝、訪問、常用的增刪查改sql語句,工作中使用最多的是select和update語句

中級-子查詢、分表查詢,儲存過程,索引;mysql、redis

高階-搭建服務,部署系統,問題排查。很多線上問題跟資料庫有關

07 其他技術

如快取,多執行緒,Docker,k8s,中介軟體mq、nginx等

初級-無要求

中級-根據公司要求來,懂一些測試方法,出現了相關bug,知道咋回事,而非一臉茫然

高階-熟練掌握各類技術,知道其原理,上手測試毫無壓力

軟技能

一名軟體測試工程師的日常

測試技能決定你的測試職業發展,而軟技能會決定你整個職業生涯。

01 專案相關

初級-沒啥想的,幹好本職測試工作,好好學習

中級-熟悉測試業務,至少是專案負責人,如果一直待在一個行業,對該行業有了解和認識;除開工作,開始思考一些問題,如提升效率等,並注重文件寫作、個人總結等

一次線上事故引發的驗收測試總結
邊提bug邊思考

高階-吃透業務,吃透行業,吃透測試的本質,owner獨當一面,輸出 & 分享,向上彙報……太多了,因人而異

持續進階系列:高可用測試方案和思維
測試思維進階:站在使用者角度進行測試

02 職場相關

獨立思考、邏輯能力、解決問題思維、風險意識、分析能力、執行力、溝通能力、團隊協作能力……

這個不羅列了,因人而異,因追求而異,略偏題。

03 面試 & 簡歷
先貼幾篇文,後面再更新。

面試資料可戳我獲取
簡歷優化實戰案例03:自我介紹篇
簡歷優化實戰案例02:個人技能篇
簡歷優化實戰案例01:工作經歷篇

相關文章